|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 $ m$ ~$ V. q& m5 l3 \ I
! a/ ?3 {3 q0 S! Q# n我用的ubuntu16.04的64位的系统4 B7 \/ z, I9 E4 T; h- r* A! L
* c: q5 Y- N& x" d" s我的用户名是arm) X R6 M- C0 M& {: c
我只用qt做一个无界面的软件开发,所以不用移植tslib。
7 K* D! w5 M; M: j4 Qsudo apt install gcc
2 r/ e3 |1 \6 X- i' M* h0 ~
/ l9 I4 }% H [$ W0 |2 B7 K首先安装 arm-none-linux-gnueabi-gcc
4 s! O5 E, |+ u$ ?将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2; V, P5 I+ [6 s5 i7 ]
拷贝到主目录下面
8 f$ f# Y9 }* e+ V% l) h然后解压到此处。arm-2009q1
, e. i0 [; ^" |& O( y最后,修改/etc/profile在最后添加上。
) G* p: d+ w$ p% C) g# jexport PATH=$PATH:/home/arm/arm-2009q1/bin
' P0 J: X6 l! p. p( M9 M0 _* b
0 K7 \+ L* k* J# R运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
+ u9 U1 I3 d! c; ?sudo apt-get install lib32ncurses5
3 c. X: H h! W9 k/ c0 @+ asudo apt-get install lib32z1
( h; [: p0 d( `, Y. \% R/ X x' K% E+ ?6 a- _0 l2 Y
7 c9 Q: C2 X) i( y- |3 `% V3 B' |现在 交叉编译器已经可以编译简单的c代码了。 d& T! p, x ]: V" h: k
下面我来搞qt arm linux的移植。$ ~# q' `5 g& ` I; _
3 @1 q/ v! k* d$ C下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
$ s3 A- K$ w2 N5 f9 Tsudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
7 u& F" E0 P" d9 ]; _* u. J! r0 l, C' K
解压qt-everywhere-opensource-src-4.8.3: q ~' v8 O1 P
到它的目录下面。& ?. A3 g% @7 o. @1 }
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
1 v! x, K. [6 T; F) v2 T) wsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf . A- s' R8 y5 I: K9 |! q8 z. x
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 E1 j, e6 P* e( f: V
make -j8 && make install
# D' o8 i* j9 xarm版的就完成了。
7 I- s# \' B( q然后再解压一次qt-everywhere-opensource-src-4.8.32 H; C; ]6 y7 o# H4 {9 p/ F
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
; j J! Q! S2 x+ jmake -j8 && make install7 s. {# L& e9 a) v! C" u, F# ^; ^
; ^; [ K; S( J0 p; Q: ` N" }
1 T) I" z6 f) e7 X" C @1 s! B0 @配置完成qt-creator6 Q6 \$ x" R7 X" g ?
$ r' B: L5 Y# \& e: ]# I$ r I
新建了一个项目 m& F o$ f' l* Z2 C
调试发现,x86版本的 发布软件没问题
( o( H8 W7 M2 `! P# H
( A7 s3 |/ S, ]& M忽略到所有的,可以进入断点% i1 c9 L- P3 q5 N1 E! I
然后在发布arm版时. I# K1 ]1 H# ~6 ?7 b1 F! G' m
4 J3 H) s$ @- L B2 N7 N3 V& q: r6 C9 ]! L9 W! [9 ?
然后我就醉了
5 C) V: d: C) L3 {. [6 n- e H/ S$ g6 r' W$ V
后来,我又装了一个ubuntu16.04的32位系统9 n& K1 W1 h0 E8 _5 `- K2 i" Y0 A
出来的效果也跟以上的结果一样' L! x( S# c( {2 b9 \- K
sudo apt-get install libxtst-dev
) m4 i! {+ j Z( S! Oecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle. ]' _5 R( x4 O) c9 k; `7 V9 W9 W
make -j8 && make install
1 T" Q7 r, ]& j' s" M: z
# c, V5 J c* d4 q r. dcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
* g$ z- A" o' n2 Vsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf # q, W! f& s6 u* r* 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
2 k% ?4 G2 m4 }/ D- A2 e P6 cmake -j8 && make install v$ E0 E0 ~6 F( R0 G! E' b
% \2 k: k) z& k) \& U! @# x
* F9 K& }) x* s4 x% g# ?9 G) t8 Y! }4 _/ h! s
; |) Y% Y) J$ V3 M4 _/ J6 ^ _2 a& m1 w# v: S g7 H* s. T
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|