平台:ubnutu10.04
交叉编译器:arm-linux-gcc-3.4.1
第一步,准备相关文件
在Qt官方网站可以下载qt-everywhere-opensource-src-4.8.1.tar,解压为3份,可分别命名为qt-x11,qt-x86,
qt-armqt-x11版本可以产生Qt开发工具:
designer——Qt界面的设计工具
qvfb——Qt的虚拟缓冲帧,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以开发Qt应用程
uic——可以把Qt的界面描述文件转化为相应的
moc——把Qt的信号和插槽的定义翻译为标准的C++语法
qt-x86是基于x86架构的嵌入式版本:
如果我们想在PC机上进行嵌入式程序的仿真,就可以用qvfb来模拟嵌入式的显示器,但是qvfb只能执行x86架构的应用程序,所以需要生成关于x86的库和其他文件,如果不需要在PC机上仿真运行嵌入式程序,而是在板子上直接运行和调试,则可以不需要这个版本
qt-arm是基于ARM架构的嵌入式版本:
我最终的qt应用程序需要在arm架构上面运行,因此必然需要这方面的库,使用qt-arm库编译就可以得到在arm上能运行的可执行程序
第二步,Installing Qt for X11 Platforms
Step
tar
Step
cd
./configure
make
make
Step
In
PATH=/usr/local/Trolltech/Qt-4.8.2/bin:$PATH
export
第三步,Installing Qt for Embedded Linux(x86)
进入x86目录
#
#
#
第四步,安装触摸屏校验工具
把tslib-1.4.tar.gz放到一个目录下,比如/opt目录下。接着执行命令如下:
#tar
执行命令cd
#./autogen.sh
然后接着执行配置命令:
#./configure
最后执行编译命令和安装命令如下:
make
make
如果以上步骤没错,则可以在/usr/local/tslib下出现我们需要的库文件,这些库文件我们移植时会用到。
编译期间出现的错误:./autogen.sh:
解决:sudo
第五步,Installing Qt for Embedded Linux(ARM)
进入arm目录
#
-prefix
-opensource
-confirm-license
-release
-embedded
-xplatform
-depths
-fast
-optimized-qmake
-pch
-qt-sql-sqlite
-qt-libjpeg
-qt-zlib
-qt-libpng
-qt-freetype
-little-endian
-no-qt3support
-no-libtiff
-no-opengl
-no-mmx
-no-3dnow
-no-openssl
-no-webkit
-no-qvfb
-no-phonon
-no-nis
-no-opengl
-no-cups
-no-glib
-no-xcursor
-no-separate-debug-info
-nomake
必须加上“-prefix
如果放弃配置,则使用命令:#
编译:#
安装:#
第六步,安装并测试qvfb
编译安装PC版中的
进入qt-pc/tools/qvfb/目录,执行如下操作:
#make
编译完毕,将qt-pc/bin目录下的qvfb文件复制到/usr/local/Trolltech/QtEmbedded-4.8.1/bin目录。
测试qvfb:
为了方便使用qvfb模拟ARM的结果,在环境中添加qvfb的路径
输入命令:
export
重启,测试是否加入成功
echo
看是否显示刚才添加的路径
测试
命令:#qvfb
其中&表示后台运行。