|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
5 {9 n2 {- l4 z7 q( O* d8 k" g+ e. Z
( R7 e0 A' Y6 u {- y我用的ubuntu16.04的64位的系统6 ~6 M& L0 U5 h2 W/ B7 h
9 Y" I4 z# y+ O7 W6 P0 j
我的用户名是arm
% W6 ?2 r8 R- p& p6 d( y7 z% R我只用qt做一个无界面的软件开发,所以不用移植tslib。
2 {: `0 N4 q! G5 e" Y) l9 ysudo apt install gcc
2 w! }( z9 ^- u6 _) u' Y: w3 e: t+ N6 M4 v: n
首先安装 arm-none-linux-gnueabi-gcc
4 Y/ C9 q: P( T0 t9 D) z+ n将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2$ `/ ~4 Q" n! G# l8 W% z1 _# q
拷贝到主目录下面
7 A7 |3 ]2 h0 d然后解压到此处。arm-2009q1
% [' z8 i- V! S" f+ |6 I/ [& C# E最后,修改/etc/profile在最后添加上。
/ x3 b$ H* _. X' S) I$ Cexport PATH=$PATH:/home/arm/arm-2009q1/bin
% f3 C3 I4 ~! X9 h3 i
1 } N* [$ A# b) m5 E3 @运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库% ?% {3 L9 {, V* R7 I6 L4 M: Q
sudo apt-get install lib32ncurses5
1 v8 a# N. X" ^) ^- s1 U e* Lsudo apt-get install lib32z1& R W z$ A$ m( {# M" h; r
v, o8 Y8 V* v! Y g3 O0 m9 g% b( e( c
现在 交叉编译器已经可以编译简单的c代码了。
9 m @ [' r2 z& V( d9 |" V1 S下面我来搞qt arm linux的移植。
% @5 J# z, F% f p+ x
6 N4 d- z1 `5 Y7 U% {* B$ ~下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
& Q U( b+ O0 y0 Ysudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
0 v0 ~# L3 i B# o$ `7 H C _8 Z+ f' v# n& B) Z% Z9 z) s6 e& D
解压qt-everywhere-opensource-src-4.8.3
- u6 R7 P' u( h4 E1 m到它的目录下面。
! H. u% W/ R* u8 k! |0 Tcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ 2 B i6 E+ o: D k; ]
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf ' z, o. l4 S% I
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
1 G$ P; O4 J. B8 pmake -j8 && make install
! ]+ i7 }6 V. K! N5 u1 Narm版的就完成了。
" W7 P: d7 u7 l- ^0 h+ [2 H然后再解压一次qt-everywhere-opensource-src-4.8.3
9 T% ?- S+ t4 t! iecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle0 B5 }4 M" N8 x* t
make -j8 && make install
% V3 `& m- b0 ?5 |, s, v( W3 A% h
" z4 l' r: n9 g2 J! m
, j' w- E" q5 A配置完成qt-creator
- M# d: ?; C% Y: \" ^5 Q
8 ^5 w9 s) `0 }# f/ x, G新建了一个项目
4 Z6 ?3 g; D* w0 o, b调试发现,x86版本的 发布软件没问题$ A2 l% J9 [% Z5 [: T2 y' `. s
5 |, ]! _ W# t- c( m
忽略到所有的,可以进入断点
# q/ N) Y' R" |1 X% Q$ x然后在发布arm版时
' I! _! E/ }3 c, O0 s# _/ I! V1 r2 T' `2 r6 }
5 ?; s6 K5 R5 @* `7 |/ `# \然后我就醉了5 x/ |; X5 B9 ]. G
V1 D/ e- _" S+ i( m( j
后来,我又装了一个ubuntu16.04的32位系统1 a& U4 a; n# o% @6 d
出来的效果也跟以上的结果一样* }0 g+ J6 X! w) o! w& G! e
sudo apt-get install libxtst-dev
! Y/ X- g$ C7 a3 ~5 Q) M* Hecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle- x5 _. i. M" r! j1 y' c0 j
make -j8 && make install
" ^8 A# ]# r9 t. L c3 b6 V Q- y3 ~' _) O5 @ g9 X7 Q' i
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
, t& n/ N: h0 W* Jsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf V7 A; t2 _2 ~7 U. _4 s2 t, F
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# X4 F0 p1 m% ]% z; u
make -j8 && make install' v: @& g9 _6 ?. ^4 C
3 E \# }' d2 r0 s; z1 R
' }* l( O2 D7 x& v8 L' x
4 e: s. Q& Y. a# t9 ~
( t. { z' h" d' E! p, ?# F W; P) d" Q( m3 b1 C
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|