|
|
本帖最后由 tumi 于 2017-5-1 10:15 编辑 ; S! n( H* B# R" z- r) T7 m
5 z, ~9 z! C) ~
我用的ubuntu16.04的64位的系统
6 Y. j, v. \0 ]$ N# h2 l* E- v' [3 z. \5 U! |! U0 ?3 F8 n; n
我的用户名是arm5 n6 ]* \: W; E5 }( ^
我只用qt做一个无界面的软件开发,所以不用移植tslib。
4 O. U' x$ y& N+ \0 \( Gsudo apt install gcc: ~" g* P# a* N" d- {( Q/ @- T) U5 E
8 u9 y6 {* K& U: ^首先安装 arm-none-linux-gnueabi-gcc
1 \0 Z2 r7 ^% c7 b0 t将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
8 [; v2 D; x3 I, P拷贝到主目录下面
, l% Z& N) j! b6 u6 _2 P然后解压到此处。arm-2009q1
" d. |) O; ]) x9 {1 `; l! M7 n最后,修改/etc/profile在最后添加上。
. f- T8 _7 X3 O; \5 K% ^export PATH=$PATH:/home/arm/arm-2009q1/bin" b: Q" ]# v# [) z- [4 ]
0 U5 o- m# x: _6 X8 m$ j ~
运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库
0 X: F, t2 i0 n* l% [. T# j- isudo apt-get install lib32ncurses5
! I9 [) R# W2 j; r/ C0 t `8 U% \ ]5 I- Wsudo apt-get install lib32z1
$ d9 Y B) K6 Q" b( [
7 Y) u- c. M# X, s+ H9 f A" s! \$ V
& g. N7 ^8 h% b& B5 q. o( S现在 交叉编译器已经可以编译简单的c代码了。: P2 Q/ h, C: C1 Y( ]9 n* V. [( a1 a/ O
下面我来搞qt arm linux的移植。; K# n" f% W7 j8 T* Q
- {3 ~7 P0 m5 A9 X( C
下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要 A! k# U3 A& v- c$ I
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool+ o _( Q% r) `# z3 I, T" m$ S" H# H
O1 j% X$ j, L' x7 R% a% [解压qt-everywhere-opensource-src-4.8.36 B s6 q2 W$ o
到它的目录下面。& w! `* m) B2 |2 K6 R
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ ( [( F6 W n5 |# Z
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
6 m0 W" ?7 y& z2 e2 [; Zecho -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! M( z) i& S8 j1 Q# I' i/ c0 f& _9 ^
make -j8 && make install
4 d7 G/ u1 ]$ U6 F1 n8 Y* A' d! Marm版的就完成了。7 r6 C9 Q7 y3 A- f/ g3 F8 O/ e; X
然后再解压一次qt-everywhere-opensource-src-4.8.3
% i# W1 \$ f1 i I. g5 pecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle! f9 q1 Q L1 A2 [4 u
make -j8 && make install
$ @( O. [: \# D& D
+ \2 b/ P5 J5 ] x! _8 ?* Z' K- E% K5 M4 Z" M" A% k5 u
配置完成qt-creator
: c9 F, R& s+ \. C
% m" a+ Y2 `9 d( v3 c2 P5 g新建了一个项目
* p# S6 i; U$ `$ K: M. [调试发现,x86版本的 发布软件没问题. z& n* |5 q$ Y% }$ g! l, R
7 t+ W& n% i' h忽略到所有的,可以进入断点
0 v4 D. K3 k$ G9 j然后在发布arm版时1 m% ^; X! f5 e2 b! z3 r8 e
* e- V9 Q) W" V9 w' ]2 [
m N5 B- ]* p; P' \
然后我就醉了
5 ^: Y3 \" G0 P. |% q- G \
* X$ D" [4 ]) `' C2 q后来,我又装了一个ubuntu16.04的32位系统
Y7 M+ [7 V: |/ J) l* F出来的效果也跟以上的结果一样: `/ j$ g$ I' X6 r
sudo apt-get install libxtst-dev0 ]9 I" c: W& M1 k! l* M
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3 -no-gtkstyle
$ [9 U4 E. p, E- f$ Lmake -j8 && make install
+ F$ g& N u9 \; V: M- K/ A
# i! `" y7 ` Q# f' |8 I qcp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ 1 b, G; c1 b# ~8 A* e
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
# }! I; F1 N* ]3 b' Necho -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% @6 T8 t5 L: d
make -j8 && make install* c5 G8 {4 a& C, c5 n
) w9 V2 N2 M R! `
3 h/ T4 @! s7 o2 p
4 A" J3 n7 h0 R! y; w# W
_5 W8 [% W; Y4 B+ K
- w; t' t0 l& \ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|