|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 3 i5 v# F7 ~+ }! W1 r6 v5 G
0 b& w6 m! j$ |4 _我用的ubuntu16.04的64位的系统' }& ~$ X7 t- o. u* _+ I$ B, {# u. x2 I
' ]4 z7 b5 t1 H
我的用户名是arm" x3 }6 \- t+ F. L0 g
我只用qt做一个无界面的软件开发,所以不用移植tslib。
5 K+ g! _% A! d# M2 ?9 H' a8 ssudo apt install gcc
' Y4 Y* \5 }/ w' `5 b$ N8 M9 m& b& |* y3 a* e8 R% p
首先安装 arm-none-linux-gnueabi-gcc
: j5 N& y) n2 z, x% v& J将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2; l' ~( r$ K1 Z/ { |, f7 }4 ^
拷贝到主目录下面
6 {- P& R6 f# H2 p8 d0 G然后解压到此处。arm-2009q1& }4 Y. S- }& c( X: E+ P
最后,修改/etc/profile在最后添加上。
8 P% Z9 I4 J+ w6 n0 \) Pexport PATH=$PATH:/home/arm/arm-2009q1/bin
( P& L6 m3 V* m; ]" A3 y, u S3 ~ l! Z# p( K
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库) X# x, C; n: O5 a4 h: e8 t$ _
sudo apt-get install lib32ncurses5
6 p" Y9 B4 c% w d, K3 u0 _) d7 Z' psudo apt-get install lib32z1
7 V4 J3 e7 R j+ b6 I$ @0 Q
8 A' E. @. f) Y2 j% X5 D
+ w6 Q( d" W" v& @$ Z5 U现在 交叉编译器已经可以编译简单的c代码了。' u+ \. K. X! _7 s5 h9 i
下面我来搞qt arm linux的移植。 y( _" D0 `3 Q# u5 l
3 W$ u, T" `: W( q/ o
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
* j( O1 g2 z! l1 B! k4 \ Dsudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool- G' ~# s% ^( I2 d
X4 t5 R& u' ?( z
解压qt-everywhere-opensource-src-4.8.3
3 K/ d% V5 h" X) y0 f到它的目录下面。
9 p, J. v$ X0 g8 P: w% }3 Z# }1 l5 ?2 scp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ 1 s- N0 V+ ^! j: F H4 H! N
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf + l$ k) Y8 Q) l; `; R
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 E7 p% M7 D$ J# o9 j* i4 `
make -j8 && make install
% F* U. U2 @1 \; f2 C9 Uarm版的就完成了。
& C' T( I1 G. L8 s/ e然后再解压一次qt-everywhere-opensource-src-4.8.31 w7 t, y$ q5 \% W S
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle- r+ ^0 P8 ^% {2 N9 T0 Q* g3 }! B2 |
make -j8 && make install2 z9 a7 P2 k4 k5 i3 ^3 [; F, q
) b2 Q4 f! x- ^) r; m9 I! H
: g F; [$ R% A# `2 d& a
配置完成qt-creator; b3 Q ~' e( e: s
$ t1 b7 o w7 @" n新建了一个项目
. E1 Q3 z! a A1 Y, \3 o! _调试发现,x86版本的 发布软件没问题4 g, Z7 K9 x4 s1 V% y/ V
* R* F8 Z/ p! w忽略到所有的,可以进入断点
d. Y1 R, j' i: s9 e! h% `# Y$ m然后在发布arm版时# G+ F) U5 i1 Y6 q& i8 ]# w
8 h1 j- g! H$ e. C' y
, t" i( m, L H8 z/ ^ p M9 Y- t然后我就醉了
* C y; W1 W' U% w
" k. O1 b2 } |后来,我又装了一个ubuntu16.04的32位系统9 A( R9 t% o) ]+ N
出来的效果也跟以上的结果一样
7 q3 _, a$ w a% s+ C: hsudo apt-get install libxtst-dev
& }6 r* a5 S9 \+ ]( \echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
' i( \3 B3 j# A2 c1 h" G9 y) cmake -j8 && make install6 `9 g; A9 s- K* n& Y( q
- i/ _$ z$ Z" t. _! p3 \% ocp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ ) k. e/ s' s0 _# d) n6 R; E* h
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
, Z' }5 ?5 [- @7 H$ secho -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
5 m. r" M/ ?# ?# Y, T$ j6 a# gmake -j8 && make install) N1 D+ ?+ t+ w- f' P0 F
( [) A- Z3 }+ g
; w: E. {( K/ X6 P
0 R& g3 X4 j; s s: c. z
) @; P8 c9 g4 L; D# R6 s
$ }- l" [; {( Q6 i7 Q9 [$ q8 n6 b |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|