|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 . ?) \' p1 x* j- _, l0 ]
; h- q1 ?6 L! B& C$ K5 |) h1 d
我用的ubuntu16.04的64位的系统* m+ h- ?" b1 m2 z; [5 E
/ \( E! J4 j4 f: j8 D9 W5 j我的用户名是arm' u6 B8 f. w# ]1 v* c4 w9 F8 \
我只用qt做一个无界面的软件开发,所以不用移植tslib。
1 R) z' L; S) k: k$ i- tsudo apt install gcc0 R* ^) E/ K- V, Y" w' W
0 r! I- U) w O. u6 [, `' r( B
首先安装 arm-none-linux-gnueabi-gcc7 p; s+ Q5 m9 U/ o: |
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
6 `# |- }: x" G拷贝到主目录下面2 Q" O- {+ G( m2 C
然后解压到此处。arm-2009q1 i. g8 z% ^5 [' H8 s# V4 |
最后,修改/etc/profile在最后添加上。' L8 Q, K7 l( h9 Z2 T: W
export PATH=$PATH:/home/arm/arm-2009q1/bin# N# v; N- `; u+ ]7 y/ W3 S! N. H! j! Q
- f' E/ ?* `0 j# O; v0 [
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库- g' ]$ J# e/ a7 I5 W
sudo apt-get install lib32ncurses5
3 W3 q( w# K% y- _sudo apt-get install lib32z1+ h$ l, `$ }: ^9 b* M( l0 F
1 @. j5 B4 R( L' b" n# b# y! p
8 w' o: |$ O: }0 o1 M" \; ?/ k5 E
现在 交叉编译器已经可以编译简单的c代码了。
) v: \/ F9 t3 A9 ?/ Z$ g( c7 D- M下面我来搞qt arm linux的移植。 l8 u1 z6 O! x4 a& d5 |
7 c5 _& H& X4 i, N0 E% L+ I9 n下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
- _4 ~( h* W6 i- l/ A0 `sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool( \" [; D9 z' r( B$ y+ {5 ~
+ ?# [7 _$ C! U* o2 f* g解压qt-everywhere-opensource-src-4.8.3
7 D1 m1 L2 A* p" r/ [) \( |$ d到它的目录下面。
! l$ N' p @3 P1 e* t. H" Ucp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ " c4 m, E+ J }6 @/ C) F' L
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
* ?, X$ N/ L* Q- I+ _% ] l Vecho -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 V4 _$ i0 R$ g# O" j
make -j8 && make install
( V0 w8 n8 a8 l( C# aarm版的就完成了。) X5 K8 a& }7 R$ v+ S/ O
然后再解压一次qt-everywhere-opensource-src-4.8.3/ ?6 ?. r! \# a* w" O* G
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
$ g2 C, g3 e! V3 }! kmake -j8 && make install+ n3 d9 i1 @) I4 d
! p9 h# V9 d* ^6 w
8 v! ^5 c' C: v1 J. K) d$ D配置完成qt-creator1 I6 d: g$ v1 B+ k: E
; P, ~% v+ e. c
新建了一个项目
! W) Z) H4 U$ b调试发现,x86版本的 发布软件没问题* E, S" s$ d& `9 l, {
4 Y, k2 S, F, f忽略到所有的,可以进入断点* K0 i& p5 ~) h0 h+ Z& V) C$ q& I
然后在发布arm版时% z4 R4 A6 x6 b' a9 c9 p
# k4 w5 }3 w6 I/ @4 N) f/ M( z! }% l+ \; {; E6 b' ] B
然后我就醉了' H" w- W3 S; _, w# M
7 H g9 w4 h( t2 y
后来,我又装了一个ubuntu16.04的32位系统1 j% o; G' H$ F# k' p: O1 f' G
出来的效果也跟以上的结果一样
( |. s3 {3 m0 ?# Q+ Rsudo apt-get install libxtst-dev6 E# I9 A# s# b4 F2 q. u* j) f
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle+ V0 `9 R8 E* s
make -j8 && make install
& V, N9 U. Y; s, {$ j/ f" R7 b& m' j ]* d0 x
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ - a+ Q# m# Q4 a; L2 I k
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf # I) k6 e6 m9 V# ~$ N M: j
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
" \# G' R1 I6 h: {- R6 o3 {make -j8 && make install
4 b2 P+ L5 p* W6 D- e7 X
0 ?8 s# J9 }1 Q- {+ S5 u
; j7 j% `+ i" t7 m5 [' Y+ q6 c8 b8 R. U# w2 y
" i3 \6 n7 H$ F* S
3 P- X; y# D( i6 _3 q5 o |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|