|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
. _" P4 o0 m, X
. ?- J3 u0 f% g2 X. [( n3 j! l$ Y) H- f我用的ubuntu16.04的64位的系统
2 _" c! n' Z: Y
( o }) Z* Z% y {- J' v# Y我的用户名是arm( w: @/ z4 {: {7 |
我只用qt做一个无界面的软件开发,所以不用移植tslib。# {. \6 V! Z: i6 h
sudo apt install gcc
: }3 {$ H4 g" k5 q
* I/ b) v% n$ F' J0 X5 V首先安装 arm-none-linux-gnueabi-gcc$ C+ y: e. k8 S& C d R
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2: H8 `7 c3 K1 d* ~
拷贝到主目录下面
* w: y9 M; E/ L然后解压到此处。arm-2009q1* D! ?' I" p* ^- e9 n6 `# h7 |
最后,修改/etc/profile在最后添加上。
+ c: l* v0 j* s# |* Vexport PATH=$PATH:/home/arm/arm-2009q1/bin& ?/ o. M6 ^% v) }
4 o9 V3 m' @! I
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
# a" L9 |/ n2 W# [! Xsudo apt-get install lib32ncurses5 5 ]! x1 L# e8 \& L
sudo apt-get install lib32z1! t' o' X; a8 N+ H; s$ R
" s# k# ? r: z/ d k; l' u( {7 @: O& l) a3 i! Q9 f
现在 交叉编译器已经可以编译简单的c代码了。5 j7 T1 s: [+ A
下面我来搞qt arm linux的移植。
( H4 V, ]9 O& p) |+ P, A( b- C7 I' n( n- S
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要
2 q) r+ {6 l/ s+ k8 r; R8 t3 @sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
, k. u; K/ ~* K% X' X9 ~$ U2 T- @. z
解压qt-everywhere-opensource-src-4.8.3* T1 s6 X) C) V6 q z7 A$ D$ l
到它的目录下面。
" t1 F `2 {4 ^cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
: {+ M* i% p$ r" b; Y5 Msed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf * l- c' T# r# h3 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. v, i/ z9 r* ]# U0 M# S
make -j8 && make install
) ?- ?, w9 q$ Y6 q- q9 T* i$ x, ?1 Parm版的就完成了。+ }/ O' ]& L- i! e6 _7 b
然后再解压一次qt-everywhere-opensource-src-4.8.3
/ U8 l! v0 y% F, becho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle. V# {; ?7 y8 t
make -j8 && make install2 C1 U6 I, I) S; X+ b
; y4 ]' Y4 F, k+ P8 H8 I
4 ^3 Q( r/ Q+ v配置完成qt-creator
F. G: H, ^# i B% Y
+ q8 ~( O2 K2 i! p9 ~新建了一个项目: y; ?" L$ h. U0 [
调试发现,x86版本的 发布软件没问题
# f7 J" P J" T. x, ~" l% Q7 A G3 U# P6 a, B9 k9 J
忽略到所有的,可以进入断点/ X' q0 p- [& ]2 @, c& D
然后在发布arm版时
" _2 _, K$ U# d, ]
! m3 ]# V) R2 M$ X$ g) X9 P n: v6 Q$ `: v* `1 A8 g1 c
然后我就醉了9 x* Q$ F' z* | h+ G& h* R! G
& J# F) o% S( z4 l. L) g后来,我又装了一个ubuntu16.04的32位系统
# M8 b5 ^( m+ u出来的效果也跟以上的结果一样3 g8 U7 F% @# d1 O% f& ^
sudo apt-get install libxtst-dev
$ H N, A8 Y$ }echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
/ C1 X# \, a4 J. Xmake -j8 && make install. x( E9 b+ \' C+ ~
: M) r7 {) k6 X% O1 ycp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ 0 ?) \. s( A4 I! h
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf ; Z" Y6 N9 y/ v q) I4 q
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
7 W. j3 _2 _# ]! f' J1 b4 Zmake -j8 && make install
! m, L& R7 a+ x: g4 M- Q4 A1 ~6 E& d o; Z) h
- Y( a6 e( s/ v2 w/ F/ L+ C/ u0 W+ v# c! G0 |& i
$ r* s8 ]! Q7 G1 o# Q, m8 X' G1 r( M8 k3 k- _! Y# W! @$ T
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|