|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑
$ F" Y. ]0 Z6 X" w) t, {) T# I! k' j
我用的ubuntu16.04的64位的系统
$ o# S/ }' ^3 Q' d2 b8 {
; i7 J1 C" S4 h" \3 m7 e我的用户名是arm& p3 u, Z4 Y4 a, s
我只用qt做一个无界面的软件开发,所以不用移植tslib。
' ]) z. C5 u% ^6 M& rsudo apt install gcc" ]9 ^( k' ?1 R' b+ ~/ S3 J
( J; ~5 J6 R9 E
首先安装 arm-none-linux-gnueabi-gcc
3 K. N) X8 D: B' K8 f8 Y5 r将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
" K3 @3 p D0 T/ o- ]拷贝到主目录下面
0 ~4 }6 q6 |1 V+ m% E# _然后解压到此处。arm-2009q15 d8 c0 |! _# e
最后,修改/etc/profile在最后添加上。
. W( y1 c5 k" b) ?# aexport PATH=$PATH:/home/arm/arm-2009q1/bin
: E* d+ G9 N @% `& t2 _: w! m& L3 u+ L/ ?: \2 x
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
; O( Z; I& k9 _! r$ {/ rsudo apt-get install lib32ncurses5
/ A8 W& L" ^- K9 ?* l8 X3 {& }& X: xsudo apt-get install lib32z1& f; I- m/ J6 o2 w
. l" _; {" T6 C0 ^! H j1 V
" U) f0 W! h: ~2 Z现在 交叉编译器已经可以编译简单的c代码了。9 l+ {; c* @6 X7 A7 p: M5 Z
下面我来搞qt arm linux的移植。: e! y) C. [/ M
1 J, m" d* S& O l' o0 k' _下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要# l& i& F7 p- Z$ s! c
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool3 c' n/ a( }0 H- L: q( t: a6 Z" W+ M9 {
5 D8 h9 y% ^& h' q$ Z
解压qt-everywhere-opensource-src-4.8.34 Z2 V, @. v: E; J: P0 ~, T
到它的目录下面。
- N% r" x" m! D4 q! Bcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ % V- P |* Z8 M& l
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 3 J0 ?7 J/ u2 v, x0 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 E8 z! S5 O* @% z; }. |4 Q
make -j8 && make install
' c2 [% T" W! {, u) e- Warm版的就完成了。
* ?# i# K2 U5 O7 {$ D/ `然后再解压一次qt-everywhere-opensource-src-4.8.3
, N9 ?- T; l( D/ Z2 @! c, gecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
" S( ~, r* D- R4 v1 Q$ B ?; Umake -j8 && make install
( V8 P4 J% x5 ^& U! X5 W$ V
: | b6 ^8 ?- k. X, U, U- J& ^ R# s% `
配置完成qt-creator; A- a* ~5 {/ o% V% w$ B. {
1 R3 O4 a3 Y. ^
新建了一个项目
?6 r4 s$ V) S调试发现,x86版本的 发布软件没问题4 `1 T6 R. b: I, C
* T4 F! Y B! S m7 r
忽略到所有的,可以进入断点
) }: C H9 Z$ @5 F5 l' D然后在发布arm版时* F5 u6 y6 @, r2 a# V! R
1 r8 r$ W* T4 R$ i, [ H
: F6 Z- S4 [# H然后我就醉了
) g$ F6 l$ X8 `
# ^( p- ~' o2 ?' s6 g( u后来,我又装了一个ubuntu16.04的32位系统
2 }& j8 v$ y! C; m出来的效果也跟以上的结果一样& M: Q$ y- k; Q# c# M: W( v2 H
sudo apt-get install libxtst-dev
4 O2 p$ |0 l, \2 A- U+ ~ ^echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle8 N, p* X9 q* g/ h) `" K
make -j8 && make install
' v: i) o" ]8 G: Q6 F6 F& T3 h' f& S4 i+ i
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
* ~" c7 u4 F+ r& ]1 K8 x$ tsed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf % {0 q5 v! k! Z$ p( [6 W/ [# ]
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
. h" ^3 E7 k) r( imake -j8 && make install
: k9 g9 [4 M+ C; ^+ \5 F+ r7 n- ~/ z- C) d& M9 K7 R
7 K# A4 _0 p# u7 k7 M. t/ B2 k7 e
) F& w( g/ p( W+ [& M7 V0 M4 W$ E& n L- ~, g6 I3 y. m
1 Q' X- ^: z2 Y
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|