|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
5 m! D/ i$ Z- F3 e
]. }) I+ k$ q, Z4 D我用的ubuntu16.04的64位的系统
( o5 q& B! G( J- |8 N/ ^
# f8 f0 [. E; e我的用户名是arm3 _4 V# X) q, a5 U
我只用qt做一个无界面的软件开发,所以不用移植tslib。. o' j% f5 O6 Q6 X! @% T
sudo apt install gcc* {8 Y1 H9 G) {# b @
. h) K( ?4 W' x首先安装 arm-none-linux-gnueabi-gcc4 J5 p( U5 ^5 U& f# I7 I, t
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
) X( J2 y" b" c' X( [3 s拷贝到主目录下面& p6 W( M7 n' O. t' a3 j
然后解压到此处。arm-2009q1
! W: G7 Y8 ^% f9 V" R最后,修改/etc/profile在最后添加上。. E1 D; K# S: c
export PATH=$PATH:/home/arm/arm-2009q1/bin) U( s) T9 w: S" Y3 Y* L4 \
2 u/ W. }8 O0 `8 R
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库4 P& i) Z' `+ f$ g
sudo apt-get install lib32ncurses5
- a3 S* O& ^% x) g fsudo apt-get install lib32z1& V( W( K" n+ m! U5 d ~3 j
* `/ v; \, P' c% B2 v" z, i' H! g* K& t7 [& Z: c4 {
现在 交叉编译器已经可以编译简单的c代码了。
3 y, c& ~7 m P% C下面我来搞qt arm linux的移植。6 v5 N- K) K& j6 Z5 g- T2 @2 M
& n* e- @; C* x( W% N: O
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
9 j' u5 ~4 @( g2 ~; Q! Qsudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
. b, z2 ~/ f+ `- ^" Z6 C/ }6 A0 W. h8 Y6 j6 P Y$ Z! f
解压qt-everywhere-opensource-src-4.8.36 w' E( P3 M8 N6 K) q( ]2 D
到它的目录下面。
- c3 g- v" {* f K! x# f0 g5 m( y) xcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ ' j5 Q) g- y9 w/ r2 N7 L1 }
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf + L( [* f# D. n( f9 f% N
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
0 I' Q f( v1 M1 Omake -j8 && make install
& j j5 J% Z6 k8 H# A& S. j: Earm版的就完成了。7 f# p) N# ^! h" S7 g* q
然后再解压一次qt-everywhere-opensource-src-4.8.3
& I! m( K0 I, Secho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle0 c2 [( l, K: K4 W' I
make -j8 && make install5 ? f: |7 X8 o0 }% Q5 z
' u' B& b# m% h+ l1 T# D9 G
+ d# m$ o; M5 v$ T6 Q5 x配置完成qt-creator
" @' C9 P% I! r0 N* R
5 ?, ]. I2 L3 s新建了一个项目
+ Z) ^3 @- l; \; s调试发现,x86版本的 发布软件没问题
* |2 Z! P& }4 L* w* T0 d! E; |8 P$ y; h8 X+ }4 C: e
忽略到所有的,可以进入断点
4 ?; d9 X" @+ R( z3 R; V r. X" p7 |然后在发布arm版时
, S* y" @' f$ [4 x2 `$ E+ c: S; I& M4 I) a
' c6 @3 @" N$ j B7 m0 O- N& q( K; b1 i) W u
然后我就醉了
/ S% u8 ^8 P0 O: J
2 b% W+ p/ F O后来,我又装了一个ubuntu16.04的32位系统! p# l: A$ v% V1 g+ E1 u
出来的效果也跟以上的结果一样
# L7 U5 x& g$ P5 \0 m, Nsudo apt-get install libxtst-dev5 o0 d: ?/ e" r, z- @
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
1 B3 I2 e( G( t- ^4 Y# B9 Cmake -j8 && make install8 W, n! L5 \$ f4 c& s" y+ d
; g8 j' `5 _+ J. x0 ~1 I6 [cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
5 q; Y$ N/ z( |) v6 vsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
# l) f U# o S v! F8 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; `4 Z/ w4 q$ [% e
make -j8 && make install
0 }0 B% g$ y& S! v4 Z8 v) a) I- t9 `3 i: y. k. [# O' v; d
1 z! K( B& X" @/ Q' m2 Z
- x F9 D [: o; @( a) y
, v- v9 C9 c R3 r7 n% f# p* N; K8 C4 h
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|