首页 / 操作系统 / Linux / Qt/Qte 4.7.2开发环境搭建及Micro2440的移植笔记
虽然网上有不少关于这方面的资料,想了想还是自己写个总结,毕竟各人有各人的问题,这篇文章也主要是作为个人的学习记录,需要的朋友可以参考哈,老手高手们就不用看了哈。。之前已经搭建过友善之臂提供的qtopia-2.20开发环境,但用着用着愈发觉着不爽。为何??Qtopia-2.20是基于Qt-Embedded2.3的。2.3版本哪!!!现在Qt/Qte的最新版本是Qt4.8beta。虽然用qtopia2.2的朋友还不少,但是作为新手的小弟,入门学的是现在流行的4.x版本(实际上Qt4.x也发行很久了吧),在PC上编译测试无错的程序拿到qtopia中编译便错漏百出,原因很明显的就是因为版本问题。2.3版本果断无法支持4.x的。于是便有了下文。好了。前言类的废话说的有点多了。现在进入正题。
1.材料准备
先从官网上下载Qt的源码包http://qt.nokia.com/downloads-cn注意,从4.6版本起,Qt的嵌入式版本还有PC版本已经集合为一个包了,所以你只需下载一个源码包即可。图方便的话就下个Qt SDK,里面集成了Qt库(PC版),Qt Creator,省去了编译Qt PC版的麻烦。还有友善之臂提供的qtopia文件系统包 root_qtopia.tar.gz 下载见这篇文章
http://www.linuxidc.com/Linux/2011-08/40398.htm(官网上的好像更新为Rootfs_qtopia_Qt4,当然有Qt4版的就更好了)
我电脑上的源码包是 qt-everywhere-opensource-src-4.7.2.tar.gz,友善的qtopia文件系统包 root_qtopia.tar.gz,同时还有Qt SDK:qt-sdk-linux-x86-opensource-2010.05.1.bin,系统为Ubuntu 11.04。
2.搭建开发环境
这一部分分为三步,分别为编译Qt的PC版,嵌入式开发x86版,嵌入式开发arm版。简单解释下Qt的这三个版本。PC版用于开发PC桌面应用。x86版编译后的程序运行于PC端的qvfb模拟器,是为了模拟程序在目标平台上的运行情况。而arm版的Qt通过交叉编译得到在arm开发板上运行的程序。
编译PC版Qt
将源码包 qt-everywhere-opensource-src-4.7.2.tar.gz 复制到 /tmp目录下,解压,配置,编译,安装
tar zvf qt-everywhere-opensource-src-4.7.2.tar.gz
cd qt-everywhere-opensource-src-4.7.2
./configure -prefix (yourWay)
make
make install
编译过程相当漫长,图方便的话就安装Qt SDK吧,里面集成了Qt4.7.0库,Qt Creator和相关开发工具。直接 ./qt-sdk-linux-x86-opensource-2010.05.1.bin 安装(我就是SDK安装的)实际上如果不需要作桌面开发的话,这一步完全可以省去
编译x86版本Qte
在原目录下 make clean ,重新配置编译文件
make clean
./configure -prefix /opt/QtEmbedded-4.7.2/x86 -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb
make
make install
编译安装完成后还需要编译qvfb,进入PC版安装目录,我的是SDK安装,目录是qtsdk-2010.05
cd qtsdk-2010.05/qt/tools/qvfb
http://www.cnblogs.com/bin/qmake qvfb.pro
此时错误出现了
WARNING: /opt/qtsdk-2010.05/qt/tools/qvfb/qvfb.pro:38: Unable to find file for inclusion /tools/shared/deviceskin/deviceskin.pri
查找deviceskin.pri:locate deviceskin.pri输出:(找不到的话 updatedb 更新下数据库)
/opt/qtsdk-2010.05/qt/tools/shared/deviceskin/deviceskin.pri很明显应该是qvfb.pro出错,于是vi之,定位到38行:include($$QT_SOURCE_TREE/tools/shared/deviceskin/deviceskin.pri)