|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
# h4 P" [) w# p
0 Y( e( p9 N7 f0 I我用的ubuntu16.04的64位的系统( s d9 P s6 e6 B- G1 a: S& l
7 |% T5 Z; J4 V, e
我的用户名是arm
7 J( S- E5 D& u我只用qt做一个无界面的软件开发,所以不用移植tslib。5 q5 Q# h; C5 v
sudo apt install gcc4 |9 r8 J9 E( s
! F. q8 O1 N% ?& k
首先安装 arm-none-linux-gnueabi-gcc6 i# x) t2 B: g; |& o/ F3 K( \
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2( x" k- F i, C5 D
拷贝到主目录下面
1 z# d0 H% |" A9 j& |/ y然后解压到此处。arm-2009q1
. d9 W" p: {3 U' U, [. }最后,修改/etc/profile在最后添加上。
4 L+ f, z5 }* C( z7 E0 n5 gexport PATH=$PATH:/home/arm/arm-2009q1/bin+ Y# i8 p" A6 |0 T5 e T4 E
- u& Q8 [3 N1 \8 f4 ~6 _' N# {
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库( O+ b$ t i3 j+ V
sudo apt-get install lib32ncurses5
8 k2 t' j. r' e1 I3 L. K* s& ]sudo apt-get install lib32z1
1 h. h5 L) k2 ^) j. s+ b. D4 F: a, h2 a1 v* L1 Z
# T1 c/ a7 Y5 a8 Z* b现在 交叉编译器已经可以编译简单的c代码了。
4 q! }+ l0 R- _* a6 O$ w0 V7 g下面我来搞qt arm linux的移植。- V, Z! U* G+ g
1 v& D5 g) Y: t. a# ~, |% m
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要8 u8 F$ v% ^8 a/ o* R
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool. K |$ T) L! v: M9 @
3 n$ z* Z9 e) H+ c" g解压qt-everywhere-opensource-src-4.8.3
' q+ k- O: o s. f- S到它的目录下面。* r/ i4 F0 ?$ H- z
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ # P+ b$ z1 s* |/ m/ c' P/ q" P! U! u
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
- ^3 `5 j1 o+ g1 _! F7 Z" O" D+ jecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-arm-4.8.3 -embedded arm -xplatform qws/linux-omapl138-g++ -no-webkit -qt-libtiff -qt-libmng -no-neon -qtlibinfix E# s& g$ |1 ^) X, ~- |
make -j8 && make install ?$ w' }% G3 b; j
arm版的就完成了。
/ }/ k+ z0 b" c* a- X( a然后再解压一次qt-everywhere-opensource-src-4.8.3) [5 f* C' b' _1 ~) ?
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle9 z/ u, t. |' d2 n( u" [/ C* U6 V
make -j8 && make install
& }; [2 Z7 y' V* t) B# R: n
5 Y( v* a1 H8 C4 v6 c/ r+ X
" l% ]1 f, {7 S% j! B. ^: ^配置完成qt-creator
1 ^& O, X9 j# p; M( U/ G# _8 N) z" P9 E" D% a
新建了一个项目
; \0 ^5 \% n+ W8 o; N调试发现,x86版本的 发布软件没问题2 l7 ?' |5 N! I2 ]0 e
, ~+ F6 B$ l' P3 l
忽略到所有的,可以进入断点7 D$ _% w* }; g; z
然后在发布arm版时* ~9 A5 r' d. Q
9 n N) L& ]1 v( K8 J% a# k+ s3 b" S8 y" m4 }) `
然后我就醉了
+ j( @6 [* v6 `* S3 W4 R8 Y$ z) f$ p7 ?
后来,我又装了一个ubuntu16.04的32位系统
! Z0 L# a1 n& m出来的效果也跟以上的结果一样# ?, b* p* U) E8 h& A, `' j$ ^
sudo apt-get install libxtst-dev* h/ G1 C3 g1 |! Z: `1 n- x
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle( n* m- J, O/ q5 B
make -j8 && make install
) p7 t$ a' g* R3 b. ?* `7 f
a+ G! Q; \. B3 rcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
: ?6 k# n( I, {- X3 X4 Dsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf a+ P4 t7 V+ p! { b$ X2 b
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-arm-4.8.3 -embedded arm -xplatform qws/linux-omapl138-g++ -no-webkit -qt-libtiff -qt-libmng -no-neon -qtlibinfix E
* \9 w6 I% W5 I, _; S* T2 S8 Gmake -j8 && make install
% Z: i5 H4 {2 m5 _) R/ P' p& u! V& E3 J' g4 N4 V9 Y5 Y" Y0 @1 q
: i0 S+ c! H: S; E; ]6 z, T5 |
4 Z' y x( f m9 r
) O+ l# B7 J2 N% c2 o! v$ t
: T! v5 a, Z) C |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|