|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 % g! ~ q( c8 B. y: H- A. `: ~
4 m' T8 d2 X, ]3 r
我用的ubuntu16.04的64位的系统! x* M* v- v, b) A; K
8 \; k7 x5 j* o% R5 p我的用户名是arm( K" }9 ` F z6 a1 q1 ~! n% l
我只用qt做一个无界面的软件开发,所以不用移植tslib。& P1 V9 O1 g4 V- u3 o4 E1 Y
sudo apt install gcc
% J7 T3 q! I Q' x& W' Z+ [9 \, `1 l+ |$ f: z! i* [& I
首先安装 arm-none-linux-gnueabi-gcc1 S* ^9 k6 Y4 x) ^" y4 d0 q
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2, B: @+ e5 C. Y0 |
拷贝到主目录下面
" r B0 T/ j8 f: Z然后解压到此处。arm-2009q1
& Y* k6 I" M, \8 G最后,修改/etc/profile在最后添加上。
1 R: @- S$ Q- e! I1 x9 A( z: x7 ~export PATH=$PATH:/home/arm/arm-2009q1/bin
" I! |0 X/ d/ w# @3 @' g( K2 e7 P% v
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库/ m. u- M! w3 X: }7 \2 d
sudo apt-get install lib32ncurses5 . q2 s" I" w% e5 K+ R
sudo apt-get install lib32z1; v) v7 ^) S+ d( `- U$ |) D1 U
* M- I' Y& G2 X" d- \1 ~) v
( _" ~, |5 e) Q0 G现在 交叉编译器已经可以编译简单的c代码了。
1 N5 e8 M; Q9 k6 B1 v3 P7 V下面我来搞qt arm linux的移植。
u5 D; A: i+ F7 d# k5 K3 b! Y# G; ], Q2 P
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要' N: E& y" d! K- r: Z. H0 J- q
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool, t1 K$ O. X! i
, B" k% U) f" {' E! ~! p解压qt-everywhere-opensource-src-4.8.3
' N- x* y" k& l8 m* _6 I& ~到它的目录下面。 o# e; w* Z0 V8 K
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
D2 Z# J- Y. W/ K) b" O; fsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
# @# j# ~4 y1 y/ `& S4 Qecho -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
- _+ E; w) c( O9 ~* h0 Q; o. qmake -j8 && make install
. p' e2 e: B8 t0 Sarm版的就完成了。
* U. h% N6 j# E& \! T( y然后再解压一次qt-everywhere-opensource-src-4.8.35 d9 f& i2 _! V/ v. b, |1 n! M
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
4 {' r3 O8 u& a1 zmake -j8 && make install5 t4 B; _: |: k; o# \2 q _4 m
% b, Q7 i2 P* ]
4 s4 a4 n0 O8 }7 S+ V: L6 q
配置完成qt-creator
; ?. w- R3 u7 h m8 L, y; {& [: f7 F" H4 w; G) s
新建了一个项目
+ Z( {# y3 e# m4 { i1 h$ `, {调试发现,x86版本的 发布软件没问题
( w, l w- d& u% Y9 h$ S. P# ?. S+ ~4 g7 t) `1 ^
忽略到所有的,可以进入断点% ^* a: l q) j/ b
然后在发布arm版时! f) T% r% M& }5 }% |
" v8 }$ z6 d, a* i( R" [' c2 m
^4 M- x# X$ r$ G! p% u9 }然后我就醉了0 f# A& N& ]$ x/ T5 h4 t6 v
; p7 W2 d$ [% t; V/ r P" Q4 O' R
后来,我又装了一个ubuntu16.04的32位系统
. L- n7 w, v; v ?0 O6 e出来的效果也跟以上的结果一样
1 Z7 O" p7 ?2 i# Isudo apt-get install libxtst-dev
y$ Z1 ]+ e$ o- {echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
& D9 @: U' n4 T* \: vmake -j8 && make install) o7 j* r, i# }' y6 [
! U! U6 ?6 ?! q7 o F s0 Tcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
4 P) K3 v0 f2 [- Z- M% E x# _sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
# Z k; q) N( | i3 pecho -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+ K6 o6 ?7 z# f" J
make -j8 && make install
7 S$ j. k, ]8 _
& K. c- i2 F% F U& J
& d7 j) D4 s/ {5 Q3 I, |& U
3 R- q( h5 M% n% m
- b& i0 ?; r/ m2 I, K) z7 ` s- f, A6 X, ^
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|