|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
/ ^1 V& ]. q7 o1 @
$ I' d) `& o( m* N9 }我用的ubuntu16.04的64位的系统( l6 X$ \" N) \
# d( r8 D1 N: E) X- |我的用户名是arm
. ]' i7 Q. h: j7 \) ~3 t我只用qt做一个无界面的软件开发,所以不用移植tslib。7 o. {; \+ d: R3 S* I
sudo apt install gcc. D. S2 t4 b" ~4 `, b! ?
0 |3 c. Y6 F; {. v7 L首先安装 arm-none-linux-gnueabi-gcc. l: f0 m0 H& |& ]
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
7 c8 y6 t7 ~. ?' {( V- j7 ^/ }拷贝到主目录下面: R8 d" Y' e( o" c$ V, e; o
然后解压到此处。arm-2009q1+ @, S# D0 O1 I% s
最后,修改/etc/profile在最后添加上。9 o* G6 a2 v- H9 X: d* Q. @
export PATH=$PATH:/home/arm/arm-2009q1/bin
1 s* z# j- v8 d8 l8 P5 F7 F1 U+ g$ V' R0 N* F" a# q! D
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库2 M0 e$ X# d$ C$ r
sudo apt-get install lib32ncurses5
) {" u8 `, f0 q# asudo apt-get install lib32z1
# `) y. d6 M6 z! R2 n( K/ f- y7 A0 U' D8 W* f# l9 G: H
2 |! U) o7 J/ g0 J0 M/ W
现在 交叉编译器已经可以编译简单的c代码了。
0 H0 b. ^% F7 J/ r3 {下面我来搞qt arm linux的移植。
" g1 j* y1 R; D" S; i! D( ]
$ i# i; N( ]. Z0 r9 n: B下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要+ K! z6 I5 A, [/ R/ T6 b! q0 F9 v
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool4 k5 \0 c/ A6 A4 j
: i4 g6 c- F0 }* r$ `$ P
解压qt-everywhere-opensource-src-4.8.3
- ]: t5 b0 K/ R5 c到它的目录下面。
" A6 l7 \9 R2 i( A& ycp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
( p* p3 V* L# f1 |9 Gsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf " x# L' @4 n- [) g
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 E2 D5 ]9 J9 s6 x( M4 k1 S* N
make -j8 && make install
1 z+ g+ D& I1 d( [0 V+ g8 narm版的就完成了。7 {' @1 P0 S L/ C% j1 M
然后再解压一次qt-everywhere-opensource-src-4.8.3, @" c$ g: M! Y4 m, Y; @+ I
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
! Y8 k5 k4 a1 a& m3 I: B$ Y' \5 B/ K6 Wmake -j8 && make install
6 @9 k9 u$ i* e- M+ F
- t/ K6 b3 ?; `+ y
! B' A# n6 _. C, z" m& H配置完成qt-creator
! |' I/ G5 @- j& K8 g' |4 h6 h8 a$ i, W
新建了一个项目+ z& ~ W5 J3 h
调试发现,x86版本的 发布软件没问题0 H1 R. D# }* k2 e
4 e$ [: e+ n- X8 W2 P; S- j
忽略到所有的,可以进入断点! r! e" c1 ~# H+ g- x5 }3 r4 Z
然后在发布arm版时
: h# b- ?8 w0 f& T) `
5 v* [6 V( F! X& e& Q) J4 V
0 q% b/ Y7 s3 u! O: Q! e然后我就醉了* H3 U8 O" b6 m3 Z4 A& B& Z; @3 o
4 w F8 \" {, c1 S后来,我又装了一个ubuntu16.04的32位系统
# J* ~9 X) \# d5 d出来的效果也跟以上的结果一样8 h: @: H+ j$ s
sudo apt-get install libxtst-dev- a" u; \0 g% D( \. f! H2 _
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle0 O% f1 @0 ~' r+ m
make -j8 && make install
5 v( C4 D8 t" k9 j
+ J+ ~: @0 H8 ], R6 w5 tcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
! `9 o% k7 A5 F* @9 N6 Esed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 5 P9 h1 f P9 k3 e8 u0 _3 R% \5 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 E3 G& ~% P/ U! Z" \; K1 ~( P. z
make -j8 && make install
9 a% g6 ]1 I7 g) s
& j4 Z% ^- Z* r9 d2 v( V7 m& t% c% B7 @0 J6 _
; r0 A$ O9 ]9 h, f0 K4 c8 r, t: U" e) H8 G" p
5 @8 S5 N2 I6 A) _5 v |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|