1 解压源码包
$ tar zxvf qt-everywhere-opensource-src-4.6.3.tar.gz
$ cd qt-everywhere-opensource-src-4.6.3/
2 配置Qt
./configure -prefix /usr/local/Trolltech/QtEmbedded-4.6.3-arm -opensource -confirm-license -release -shared -embedded arm -xplatform qws/linux-arm-g++ -depths 16,18,24 -fast -optimized-qmake -pch -qt-sql-sqlite -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -little-endian -host-little-endian -no-qt3support -no-libtiff -no-libmng -no-opengl -no-mmx -no-sse -no-sse2 -no-3dnow -no-webkit -no-qvfb -no-phonon -no-nis -no-opengl -no-cups -no-glib -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-separate-debug-info -nomake examples -nomake tools -nomake docs -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
3编译安装Qt
$ make
切换到root用户 sudo -s
make install
可能会出现一下错误:
make[1]: arm-linux-g++:命令未找到
make[1]: *** [.pch/release-shared-emb-arm/QtCore.gch/c++]错误 127
make[1]:正在离开目录 `/home/wlg.../qt-everywhere-opensource-src-4.7.0/src/corelib
make[1]: arm-linux-g++:命令未找到的解决办法
原因:我们在root用户下install 环境变量找不到 g++编译工具
具体的解决办法是
1.先打开一个超级用户权限的shell:
命令:sudo –s
2.在当前shell下,设置环境变量:
命令:gedit /etc/profile
在文件末端加上export PATH=$PATH:(你的arm-liux-gcc的安装路径)/opt/crosstool/4.2.4/bin,并保存
3.重新配置./configure ……………
4.再执行make&&makeinstall即可解决此问题。
修改根文件系统/etc/profile文件
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0
export QTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm
export PATH=/bin:/sbin:/usr/bin:$QTDIR/bin
export LD_LIBRARY_PATH=/lib:/usr/lib:$QTDIR/lib:$LD_LIBRARY_PATH
编译工程:
本qt是通过4.2.4编译的
编译工具:
/home/bt/myrootfs/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin下qmake
编译工程顺序:
qmake -project
qmake
make