|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 8 w6 A/ N7 r1 q" {8 b4 P. A, X
% X( J6 Q1 j9 j, K1 I9 u" W我用的ubuntu16.04的64位的系统
% i" Q* S0 U/ A& \8 m) y. D6 g& L
我的用户名是arm
4 k* m( g* ~3 ~; W8 ~我只用qt做一个无界面的软件开发,所以不用移植tslib。
3 A+ d9 o L9 a) r3 W3 p$ ssudo apt install gcc
" u4 z" s+ z: u' M4 j. g/ ?# H0 ~- e9 ]2 A( {5 s
首先安装 arm-none-linux-gnueabi-gcc
0 Y# n: |, J: O将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
' \, Q, a" M4 d) m6 G拷贝到主目录下面& ?1 k, q) g+ S, R! ?% G
然后解压到此处。arm-2009q1
% r8 k+ o5 A( _$ B/ ]最后,修改/etc/profile在最后添加上。; j6 r! D5 C6 G! O" Y
export PATH=$PATH:/home/arm/arm-2009q1/bin. j2 q1 x, R+ k8 n
* [ I/ n! z1 G! U z' }2 W: e运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
& w8 a% c. ]4 |) N7 x6 asudo apt-get install lib32ncurses5
6 d6 b3 e0 L5 l7 l* ^" Q2 Bsudo apt-get install lib32z1' ?' V+ T, A: v* u$ [
: N- E8 L* [2 i, ?1 H& g$ n
% R+ O c% C: P1 B1 G现在 交叉编译器已经可以编译简单的c代码了。/ y8 m0 S8 q$ j. i0 S4 |
下面我来搞qt arm linux的移植。
?7 _' N% B, L& ~" B2 R" X
9 h3 D ]4 b# M9 A下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要, |$ Y) @4 L0 k& Y
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool5 `+ \9 b2 u, r
! b6 V6 h; I/ X7 Q9 F* u+ c
解压qt-everywhere-opensource-src-4.8.3
: G7 i+ e# H! l/ b" q* }4 {) m到它的目录下面。
- ]% J/ N: @9 _( S+ gcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
# X* ^# I0 D7 q8 n2 m* o2 w5 C- Z# psed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf ) B# H% }8 b* Y1 k9 `5 y
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' @9 t2 h2 m: Y9 Q; _make -j8 && make install
+ `* ]$ G m$ q0 ~& Oarm版的就完成了。, U3 ]* D9 p _. K1 I" N7 Y" f
然后再解压一次qt-everywhere-opensource-src-4.8.3
& g& q* y- R8 V7 Q' e, Q. jecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle h6 Y+ ]( b. g* v3 Z
make -j8 && make install
; T" y5 N0 k9 D2 |- A
k# K4 C" z% }( i8 @" v
4 J/ U: Y- q/ Z1 O% r配置完成qt-creator
6 N1 N" j, N0 ?0 M& t$ v, P) z& c* t1 A9 k
新建了一个项目
( \( `/ j3 o5 Z! x2 J( l调试发现,x86版本的 发布软件没问题, ~0 S& ^5 g% ~& Y# _. w
1 K# e7 X6 A. `5 u! ?忽略到所有的,可以进入断点1 V+ V E+ \; b
然后在发布arm版时
- e/ t4 h( R$ I' ?- n
8 \& p0 B+ V) y; @! W$ x+ d; z- |% f( l3 N
然后我就醉了5 d( Y$ i' _+ h" @- r
" f% v4 B. d3 x" l. N2 L6 C# K
后来,我又装了一个ubuntu16.04的32位系统- H8 y9 n, S: c/ o9 x$ R$ g1 Q* a
出来的效果也跟以上的结果一样
# D' v B+ n1 i+ `, n1 ]6 P1 z# i, Msudo apt-get install libxtst-dev" V4 j" n& b8 C) l
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle& g4 h ^: T; g+ `
make -j8 && make install
5 }4 u8 K$ n' d/ x. S% q& H0 o, {2 `& C0 l9 {& e9 w
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ P- P5 n( \& b. m# r4 j
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 3 N9 P8 F g2 j& y0 t' T
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' O6 v9 _7 W: F
make -j8 && make install: k i9 R: h- I
# w! }9 j# C% |) s% }9 x
+ J) Q* g6 w# F8 y4 e N( G
; N; {6 I7 }; ? K4 K3 }
" i; t# {1 I/ ^
6 T3 i; k! |* r/ s) U) | |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|