嵌入式开发者社区

标题: qt arm 4.8.3 代码不能编译通过 [打印本页]

作者: tumi    时间: 2017-4-29 19:12
标题: qt arm 4.8.3 代码不能编译通过
本帖最后由 tumi 于 2017-5-1 10:15 编辑
5 `- @, O1 m$ v% ]; Q. j9 v) G8 q0 c. m1 ]7 @# [8 z" q1 D. l* x
我用的ubuntu16.04的64位的系统
9 |) \3 o% C) O6 z+ z! S& x+ f2 L' ]+ P3 F
我的用户名是arm
' b9 v$ J* `2 `9 C, |2 N我只用qt做一个无界面的软件开发,所以不用移植tslib。
/ P. v3 S2 {* Jsudo apt install gcc0 V9 J0 F3 o$ v) C: B) r
( i- @5 W) m- j' t. |: }" \% D9 Y3 P
首先安装 arm-none-linux-gnueabi-gcc
7 y1 X; T# H; R8 \将tools目录下面的arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2: g7 H* t- Y: W) p, K+ E
拷贝到主目录下面: F" ?2 T$ w* I; L' U1 d
然后解压到此处。arm-2009q1
2 v6 S1 D6 j& o. `2 X8 J1 i最后,修改/etc/profile在最后添加上。/ O: X+ D+ p# T! M. Q1 g. i
export PATH=$PATH:/home/arm/arm-2009q1/bin* N$ Y) \, H" c. @

! ^9 o2 X( z3 f! V3 X' e运行 arm-none-linux-gnueabi-gcc,运行不了。然后我就装了支持32位程序的库. R# L; C+ h! o6 v3 P( v
sudo apt-get install lib32ncurses5 ​* s6 T: \( k6 d4 N3 v
sudo apt-get install lib32z1) {% V) b0 ^- I
7 e9 S0 Z( m0 `" u* A* S( D( t

5 E! \  v! z+ w$ y/ K现在 交叉编译器已经可以编译简单的c代码了。
  G9 U, z3 R/ ?8 c8 Z0 _下面我来搞qt arm linux的移植。
2 N; P2 w1 u8 _! j. L$ ~
8 W1 d; o2 d" _下面这句话,可以把一些必要的库装上。装qt-creator-2.6.1时需要  x& D$ M5 A$ j! A
sudo apt-get install g++-multilib libx11-dev libxext-dev libxtst-dev zlib1g-dev lib32ncurses5 lib32z1 libpng-dev autoconf automake libtool
2 c0 R* g( n9 L2 n9 C  b2 P0 v9 Z4 h
解压qt-everywhere-opensource-src-4.8.3
6 G& P$ p% N3 @/ ?到它的目录下面。9 s5 p2 U# Z5 ^  E* ?
cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
3 E9 |7 g: w6 |$ p& f( f8 ased -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf
. @4 n1 g" i: h9 secho -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
4 e! ~& Q2 N3 Ymake -j8 && make install8 t7 f# [$ R! ?8 ~7 k" X9 G
arm版的就完成了。
8 {) x" z4 _0 ]+ M/ B5 L( f然后再解压一次qt-everywhere-opensource-src-4.8.36 p( i' H* G: r! ]( k8 h3 l
echo -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3  -no-gtkstyle. ]* M/ _$ L+ L/ X+ N- m- P
make -j8 && make install
! y8 `' @9 I* {, L* H2 I- e
* s% @) e. m& m9 F1 G8 r* |( W( q) Y, _& j; z+ `
配置完成qt-creator3 X3 H& K' D( h  m0 P

( C* J: l9 [+ m3 {新建了一个项目! w7 m' `& ?2 z$ ?/ F) {: {( L
调试发现,x86版本的 发布软件没问题4 u; `$ h6 L/ @% X7 b( o
[attach]2261[/attach]
& D( R- Y, S+ g' H: K" V忽略到所有的,可以进入断点
! |) v8 Y5 o( J# l( @! R6 _然后在发布arm版时3 ^6 ]$ c! j( _2 f+ L: R8 O! L
[attach]2262[/attach]% H' p# ~5 V9 B( d7 `% F

8 Y+ G* h4 C9 T! s" y6 b然后我就醉了& R9 J0 @5 e3 O- O' X

0 A/ Z+ P/ x# {. _+ ^) I* g后来,我又装了一个ubuntu16.04的32位系统
0 B! ~. g# V: u0 X3 s出来的效果也跟以上的结果一样
$ }: X9 J5 l. Q( h: A8 M! lsudo apt-get install libxtst-dev
1 ^9 L) I) a9 d' Uecho -e "o\nyes" | ./configure -prefix /home/arm/qtlib/qt-x86-4.8.3  -no-gtkstyle) [0 f' e% j/ r$ Q, M( r
make -j8 && make install
7 J% X! P. g! f+ _" C6 m4 g5 |
2 r% ~& {* [" j( K7 e) F8 ?0 j$ ]cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++ " k' e4 ~4 w' {+ ^6 o; z. u
sed -i "s/arm-linux/arm-none-linux-gnueabi/g" mkspecs/qws/linux-omapl138-g++/qmake.conf 5 x' T8 w8 f: r  v
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& a+ W. Y0 j& R9 Z! Q8 D
make -j8 && make install
% y$ u2 [- s+ [' P2 m, R) A
5 f, p4 j4 n( C' s6 m) K% G9 j8 ^5 O

3 k( D% C/ z9 I) J8 b6 e- a6 ?# J. {; a: N! m: n( y9 Z4 P: u7 M0 u
* Q  I: y& k. ~3 y

作者: human    时间: 2017-4-30 21:12
加sudo操作看看
作者: tumi    时间: 2017-5-1 08:02
human 发表于 2017-4-30 21:12
8 n  r1 c9 Y$ q$ ]加sudo操作看看

) C  s1 j- q4 e2 r1 ^( o% a. g 你的意思是把库的编译工作,用管理员身份来搞嘛?我对arm库,搞过了。依然是同样的问题) M( K% E7 {+ E

作者: tumi    时间: 2017-5-1 08:02
tumi 发表于 2017-5-1 08:02
0 q& Y4 I9 W. ^4 e- o你的意思是把库的编译工作,用管理员身份来搞嘛?

+ [% }9 k- M( \' b& L我对arm库,搞过了。依然是同样的问题
作者: tenny    时间: 2017-5-2 08:36
mcsdk  里面有编译好的 Qt 库,直接使用即可,不需要自己再编译 Qt 库,参考使用文档
作者: tumi    时间: 2017-5-2 09:28
tenny 发表于 2017-5-2 08:36
$ h& l4 C- Z: e  imcsdk  里面有编译好的 Qt 库,直接使用即可,不需要自己再编译 Qt 库,参考使用文档 ...

8 s7 M" y1 ]$ P& z; \找了好久好久,都没有找到,望指点
作者: tenny    时间: 2017-5-15 13:40
请致电技术支持




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4