相信自己,只有不想做的,没有做不到的。
分类: LINUX
2013-09-26 12:32:50
【目标板】全志A10
【虚拟机】Ubuntu-12.04-64bit
【编译器】arm-linux-gcc 4.3.2
安装Linux/X11版Qt 下载页面:
选择 Qt libraries 4.8.5 for Linux/X11 (230 MB) () 得到qt-everywhere-opensource-src-4.8.5.tar.gz,这个和 Qt libraries 4.8.5 for embedded Linux (230 MB) () 是同一个文件,配置不同就可以编译出不同的版本。
安装Linux/X11版Qt:
tar -xvzf qt-everywhere-opensource-src-4.8.5.tar.gz
cd qt-everywhere-opensource-src-4.8.5
因为库比较大,要编译好需要大约一个半小时,-prefix后面的是安装目录,根据需要修改。
在编译过程中出错,提示
g++: error: unrecognized command line option ‘-fuse-ld=gold’
解决方法:
这是Qt的一个bug:
在装有gold linker的系统里,编译脚本会加入-fuse-ld=gold选项,但这个选项gcc是不支持的。解决办法是移除该选项,找到文件src/3rdparty/webkit/Source/common.pri,屏蔽QMAKE_LFLAGS+=-fuse-ld=gold。
# QMAKE_LFLAGS+=-fuse-ld=gold
在编译过程中出错,提示
Basic XLib functionality test failed!
You might need to modify the include and library search paths by editing QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/duliqun/qt- everywhere-opensource-src-4.8.5/mkspecs/linux-g++.g++在/usr/X11R6/lib下,找不到libXext.so。其原因就在于需要安装libX11的开发包,在ubuntu/debian里包名都是libX11-dev根据以往的经验,在./configure前主动装好下面3个包:sudo apt-get install libX11-dev libXext-dev libXtst-dev
最后,编译成功以后,如下图: