|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 7 J8 L) m# g, y& i
" Z: x$ t$ i* o) |6 ~5 K
我用的ubuntu16.04的64位的系统
* ?" ^3 ^& Q' w4 y: |' [, |$ W8 G3 @! h1 ?, F: q
我的用户名是arm
+ E8 G- ]0 P7 z4 ?# t- w我只用qt做一个无界面的软件开发,所以不用移植tslib。8 V0 K, k8 |1 n% m8 ? @6 X n
sudo apt install gcc
+ ~( f( W- m z- a. m. K: e
1 _0 o; I2 v, B4 [* l首先安装 arm-none-linux-gnueabi-gcc% H! d; [) m g" h& V' w3 m. t
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
% ~2 C( m* G! h拷贝到主目录下面
, f q+ H: i8 A* q然后解压到此处。arm-2009q1
1 N) i7 b! m& E: y最后,修改/etc/profile在最后添加上。+ W1 J9 M8 [" t7 _/ i, f8 k6 } w
export PATH=$PATH:/home/arm/arm-2009q1/bin+ y: ?% z% W! b ]6 o3 t
; a: \9 L4 k3 [, m5 v" V9 U运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
7 l- L/ {6 X. w0 g& L9 ]& g; hsudo apt-get install lib32ncurses5
8 ^1 F$ ]. @" L& g7 h+ X2 U0 Wsudo apt-get install lib32z1
) m8 }! J# b! ?: b B T
9 ?9 L+ U- L9 W, G2 P' l: z' [ `5 O. q* W+ p; ~% s6 y8 V
现在 交叉编译器已经可以编译简单的c代码了。9 {* J' Y- B D. h7 K5 i
下面我来搞qt arm linux的移植。
. |6 C, d3 @9 v, O8 j, E- G* q/ g- z d
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要4 z; u/ R2 s6 L. z3 X* {* F
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool- d7 Q/ r' L8 E" d
6 f' J5 E: g9 D; G" b4 O' W
解压qt-everywhere-opensource-src-4.8.3
+ \3 e! M) M* L, J! b" |到它的目录下面。) {: G/ o; {( l9 l6 }% T) J; ^: x/ {, [
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
! V+ ^3 Z5 R3 O f0 Ysed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 2 v8 @7 k, ]) g% 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
" z" N$ l R# ]make -j8 && make install
0 D$ D$ H" l7 g- I6 aarm版的就完成了。. G! J1 a; J: W/ `1 v' E' @0 z" [
然后再解压一次qt-everywhere-opensource-src-4.8.3
5 f# i" O L, {6 ^5 D9 E$ kecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
; X! w( ]! h$ `9 v& d lmake -j8 && make install
6 H' o* F; Q" F2 X- O/ J k! F0 f" x6 `) y
' M& X' w6 `3 q% Y G
配置完成qt-creator
. H. e1 M6 M$ T
, t- D: n ~0 h) T) r: S新建了一个项目' Q+ l# ?# e' X- h- j! o9 ~
调试发现,x86版本的 发布软件没问题4 D1 R% A# ?; U/ v& F" C0 J6 X2 l
6 R" |6 y$ |3 X忽略到所有的,可以进入断点% U( ]. `5 W: o, L. Z$ s% j) K
然后在发布arm版时) r1 n+ I h" T- N" t% U& a
- [$ z0 |8 g8 b5 M. J: w |9 P; ~# R
* y0 `( e* n) U+ B1 M& J* C+ B然后我就醉了+ l0 R; F6 U" Q+ o% u
`* {) W( L9 h ?: j4 }后来,我又装了一个ubuntu16.04的32位系统
8 L- W8 E7 C1 H出来的效果也跟以上的结果一样
. `' E. E7 q; @& k/ x( w. ?" ]sudo apt-get install libxtst-dev3 Z, \! G0 T7 N; j, s6 u* h
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle4 f: R. G* ?4 F/ Y: M. Q
make -j8 && make install2 w7 @( h8 D9 z4 b
5 R. c1 F5 ]% I* X, p9 vcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
5 [4 f; H, E& g) Q/ Hsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf # i k/ [- G. s$ U0 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- M5 n* n) V( Y* M" L, ]
make -j8 && make install
$ O+ o# r8 o) K2 C' Z! B' Z3 o0 { A! e* L& G; p0 P5 f0 \' J, E
* b N' Y* ]+ K1 C- X
( ]2 x6 a; x8 \, J1 q; ?) q# v! U/ i' J) F/ Y( W' o0 V+ r
; }+ r2 m( _5 g# V5 | N7 ^
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|