|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
$ J( q4 u m @- k
( }# v6 i9 q8 |7 M6 a7 J B我用的ubuntu16.04的64位的系统9 q/ Q) P/ A8 i3 `' H) Q2 t* U
- n* U) K* |- c( x) y
我的用户名是arm, j3 c! q7 V0 _, y- b# d$ x& o
我只用qt做一个无界面的软件开发,所以不用移植tslib。
% W! B4 h6 y5 \sudo apt install gcc
: w8 r. |3 Z: ~ C" k4 S6 r6 l* W& m$ N6 d
首先安装 arm-none-linux-gnueabi-gcc" y0 }! P$ K3 M/ c
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
0 i& y2 e2 ~7 a拷贝到主目录下面2 T9 s! p( o7 t3 G( U: L9 m
然后解压到此处。arm-2009q13 c9 G3 Y% J/ p9 v
最后,修改/etc/profile在最后添加上。
, K! {$ z( Y- @3 l: v+ t3 h& eexport PATH=$PATH:/home/arm/arm-2009q1/bin
. O. `. B, T b! d. Y0 y+ J) u) L0 u
) `: H8 N& G& w5 A3 X3 g6 Y& q3 b a运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
+ {6 e3 L9 P$ c/ p1 L; wsudo apt-get install lib32ncurses5 & ?" Q; c$ F$ U: o: H8 d7 r& [
sudo apt-get install lib32z1& O- B% ]( m2 Y' v& V s6 e
) v) X% Z3 _, U8 d( T
V" w) A7 b( F现在 交叉编译器已经可以编译简单的c代码了。
7 @8 C2 \+ ]+ |; P/ K) \& m下面我来搞qt arm linux的移植。
9 ~3 m" R; s+ d
) j5 Q5 ?; k$ O& \+ ]/ E+ |0 C下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
) |# m+ H: V1 B# Esudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
# R+ g( G1 N' E& ?5 R7 l6 ^4 Y% [
8 j, C0 X4 m! I( P2 ]! L1 z解压qt-everywhere-opensource-src-4.8.3/ ^" O2 R# r; j8 D) ^; v3 f
到它的目录下面。
+ p, [* W+ W5 m6 s) ~6 ucp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
) c" G$ Q2 a- F" zsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
) y0 h& D& ~+ y4 U H! oecho -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
" [, W5 I$ f! `0 J+ Y4 s1 N, bmake -j8 && make install
& i$ B" G) g, ^" [' I8 s' K. E9 x6 Varm版的就完成了。
3 H3 q, d7 u P {' G! H) p1 x然后再解压一次qt-everywhere-opensource-src-4.8.3
, P `0 b- x B" w2 F7 G+ k) Wecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
: Z: n e7 V Y# Smake -j8 && make install: ?" y% R% z" J% e, V1 g) B( s' w! v3 |
; L$ W9 Z! J+ y7 n( u5 B6 p o
3 e% Y4 l8 A, h. G) X配置完成qt-creator) s; ]( v& a; y$ ~
* [. g0 `# Y5 v$ ?新建了一个项目
& H; |4 n) F! J0 r. \/ P8 G调试发现,x86版本的 发布软件没问题2 F8 Z# c+ L }, @9 B" Y. J
5 }7 k2 j8 b( o忽略到所有的,可以进入断点
' y: x3 M5 t7 Z然后在发布arm版时* d( S7 [! s' f. f
, ~ f' h. b* b2 {
F r) b- s5 v+ m% C
然后我就醉了: a+ C1 k2 B0 i
& ?+ l& D5 X* R! ^
后来,我又装了一个ubuntu16.04的32位系统
/ a0 K1 a' f7 e" b出来的效果也跟以上的结果一样2 k) l) B. H8 H0 g
sudo apt-get install libxtst-dev
, U0 B! V( P: O$ {echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle% x1 Z- Z' i+ w4 r! f( K
make -j8 && make install
2 } _1 O1 F3 S1 y( {& N) g
j$ T( s j$ {1 N0 G7 Icp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ ! f, M1 Q* U1 C0 N6 k: l5 h7 d
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf ) n" P$ n# b& k6 w6 y" m9 c9 j/ 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$ j" M7 Y, X$ C; v) d9 D3 S1 B
make -j8 && make install* }4 d2 e: l- h. X- M2 J5 A! q
9 [. @% ]; E! t- D+ F- x5 X6 ~) F- ?- C& Q, E: d
W% @. m4 D3 @ G9 R) p7 \3 o5 P2 m9 }, n/ g) m1 ~ E
: P/ d" i2 F5 J( k- O. `. ~ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|