|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
3 e. Q0 _& Z: o* \! z7 G. D" T# L6 G0 O- U: I6 k; z$ T; G. q
我用的ubuntu16.04的64位的系统
: a$ a! i' U3 A; Q' l* P: y- `! D) ]: K3 q+ J) g
我的用户名是arm
; n- A" U& |+ w* ^0 ^% ?我只用qt做一个无界面的软件开发,所以不用移植tslib。1 A8 _+ Y; f2 f8 r- A5 r$ V
sudo apt install gcc
* N) t- K( }/ t4 A* E k
2 e% T1 `- |9 S6 S5 ~首先安装 arm-none-linux-gnueabi-gcc) n- _/ |2 u0 B* y
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz24 i$ e- g( S% ?9 B$ E" H# Y- W; L# C
拷贝到主目录下面& J" z7 j- O5 f0 d
然后解压到此处。arm-2009q1' i7 f5 e q8 o9 k
最后,修改/etc/profile在最后添加上。' ~/ ~' p6 q( \3 U
export PATH=$PATH:/home/arm/arm-2009q1/bin! Z+ n/ ^0 F8 Z; C) v3 j
( n- z$ y# y8 m9 {& h2 t* T9 r8 t运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
* s! n( a# K, T2 t3 y" C/ xsudo apt-get install lib32ncurses5 ) J( o7 s+ z# w' a4 S/ n# B
sudo apt-get install lib32z1
% K- J2 P( N* @ z4 @# B7 b& ?/ B4 }6 Z# o; ?
c: {( ^5 K5 ]4 r; B6 N现在 交叉编译器已经可以编译简单的c代码了。
( d$ D( V$ ~& R下面我来搞qt arm linux的移植。, A. ~% c0 \' z9 Q! [
6 _8 u& L! t7 m! y. ?2 r
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
C' ?" V Q' i+ isudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool- P9 }4 r4 j) a6 P& o( t$ N; k
R! P! A c& H+ S0 M/ ^ U2 H; \' d解压qt-everywhere-opensource-src-4.8.3
% R, @1 m5 R/ e% B! |7 d到它的目录下面。6 X' S' i' E" e: W) A
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
5 L# U7 g4 H, a. o1 N% _* ~! W- ^/ Osed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 2 s+ X( {1 C" K5 D
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- {; g3 O" u- k# [8 ]
make -j8 && make install: y/ \7 P' P5 x+ ~
arm版的就完成了。
7 w, v( c2 F: d' D1 b) }$ U然后再解压一次qt-everywhere-opensource-src-4.8.3
% J, p8 l3 n" @. uecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle' D* Q0 M. ^' g& l# }, q
make -j8 && make install) N2 d5 v% V4 f$ q
' j1 T) ^' ~6 Z- z; G4 I- _9 G
9 r P( w( V6 K2 z3 _配置完成qt-creator
0 ^+ _) R6 w. L$ i( w6 y2 s6 J0 H) a( B5 x/ q5 m8 J; I5 v- V- F
新建了一个项目 `1 l( _* ~4 _ G. p
调试发现,x86版本的 发布软件没问题8 m9 b" Z2 H! Z8 ]8 r" j
, M2 ]- a6 Y/ W* c) K( y8 N/ \% h) O忽略到所有的,可以进入断点* W f( `9 O$ K; N
然后在发布arm版时) q0 l. [9 G' D3 X6 d. K
' E# D, Q! a* s* E% b, f
, E) B0 ~% O2 @3 m/ H, M! y+ f" t然后我就醉了/ a6 @4 ^' d! V9 Z" f: W) ?4 e
# E! s6 V( i* W/ _. C
后来,我又装了一个ubuntu16.04的32位系统# ^8 P1 \3 @! h% w h4 n( ~
出来的效果也跟以上的结果一样
! e* B8 a0 Y; w; D3 wsudo apt-get install libxtst-dev
R/ O' D8 {; b: |* E7 K( z& techo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
1 l6 G' A& I, pmake -j8 && make install
& { {) n( e4 W5 y" C5 ~
4 L; H7 H( t; A) t: Y1 ]cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
1 L. I0 R" e2 V6 d: ~& C) gsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
+ U' Q% h, o8 j9 U3 iecho -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. O w( a/ t/ n L4 E2 R, I. |6 u
make -j8 && make install3 W; i- @$ m* `, z
$ P4 u/ p7 A, r9 U, z- ~ \, S5 H9 ~# _
) ^: R5 ^ O8 t; K, D5 L _
! `3 t/ }" p9 P9 C4 s" k! k8 R/ q2 X3 [3 M: E+ t
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|