|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
; i# V5 n8 ^2 C+ ~9 Q3 Q% ?
2 `4 S+ U/ A/ g) j; J6 x1 q3 Q我用的ubuntu16.04的64位的系统5 B$ p7 H/ k, L. M a) D+ y
7 j g4 X- S( t2 D9 O我的用户名是arm
0 ?! l1 E6 [8 `: l( y我只用qt做一个无界面的软件开发,所以不用移植tslib。! T8 m0 J1 U0 M, B, j( r$ \& y
sudo apt install gcc O$ U$ D e1 @
; d- p1 u( d- M; D. ~首先安装 arm-none-linux-gnueabi-gcc9 L, O4 u9 ?) I) z" W7 ~2 G
将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
% Q6 B. _8 z8 C! W1 H拷贝到主目录下面
: M9 U) P J, O. V) F# a$ Y& ?" g然后解压到此处。arm-2009q1
% ^$ z6 v& a2 F& T6 a1 Y4 L最后,修改/etc/profile在最后添加上。4 a0 ?) X" l0 {
export PATH=$PATH:/home/arm/arm-2009q1/bin
; N( |4 R8 _) P0 l [% }& G) w! ?; c+ Y% U% F; o
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
- D3 l: h6 I, @) o7 K9 F! o" \sudo apt-get install lib32ncurses5 . n* Z1 H) g% f: p2 h% X6 J
sudo apt-get install lib32z1: q# Z# J) S" ~* U( u, q
9 o) n: p7 \9 ^# y; |
8 d7 f1 Z: p/ r& W+ l现在 交叉编译器已经可以编译简单的c代码了。 A; }0 _" S0 z/ ^. W' E" m3 V+ Q0 E4 r
下面我来搞qt arm linux的移植。9 G8 g2 ^ |( m' ?/ O% k
; r. j9 D! j, G5 N- r下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要7 u7 z4 j( T1 e- L2 ^! t
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool8 ^5 ^. `# N1 Y
5 c3 b0 d% {$ X% E* j# o解压qt-everywhere-opensource-src-4.8.3
* c1 t/ Y; n9 p& `% i3 e1 {到它的目录下面。 p6 N2 e( x3 H+ |
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
* y) p9 |& P/ S+ bsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
0 N+ c4 [- k2 P: Z( xecho -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 E3 Z) x4 G* c; l3 S3 l6 @ H
make -j8 && make install
: R- v& I0 b( e# tarm版的就完成了。
7 l9 n; F$ v- h; E7 U! l% x然后再解压一次qt-everywhere-opensource-src-4.8.3% I. z' q9 ]5 E& ]6 D4 B
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
% [) s5 T4 l" c/ G+ b" D8 ]. ^make -j8 && make install
1 v, y0 c; n2 X8 z7 d% m$ b2 T1 U. ]$ e" a. i9 q
% d3 Q( \" v; z M
配置完成qt-creator
I; ]! }$ k( X# O& \8 i5 x; x s6 N2 a {9 U- O
新建了一个项目
1 G* ]: o! {' P调试发现,x86版本的 发布软件没问题
# J/ c$ J! B# d: S/ f3 p( t! ~# Y1 r" K0 {+ L& s8 w) D1 n
忽略到所有的,可以进入断点. W% I- k$ T) n: A$ v. z/ w
然后在发布arm版时
6 c/ s. q7 y3 y" h
# {+ Y; Y3 L2 i- J _- g! W6 i! Z, W6 g0 L7 h# y3 B& ^1 g
然后我就醉了
- ]& ~0 D6 o" Z( `& {" X
! g: u; {# M- g Z! o& u后来,我又装了一个ubuntu16.04的32位系统/ ^+ e1 J/ M# [/ x0 } Y. x6 x
出来的效果也跟以上的结果一样* h c3 s' T7 p7 C1 c
sudo apt-get install libxtst-dev8 k' ?" i, _- R
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle: p+ X3 @" M1 R4 ?6 [
make -j8 && make install' E; |: ~) T5 h. g
& x5 }( O+ ~8 w+ |% S
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
- L9 V# \1 C* L/ Q# p; Osed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 6 Z5 @% c9 I+ {& L: k% [% T1 N" E5 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
1 Q: p+ J4 h9 G1 zmake -j8 && make install
, ^ r* _: T# y6 ]% N8 V: s' b- O1 L: [' R6 K
! M$ t- b9 R$ _9 ]" M! ]1 N
" S5 r( e# L$ c5 |- g6 Q) U1 N3 |7 X `1 {2 a
/ E6 ~8 J# W) F- m; x |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|