QT5中不再用到QT4中的窗口系统qws++,而是使用QPA系统,二者之间的差异还不清楚,但是程序运行时不需要再加上参数-qws了。而这个特性也导致QT5与QT4的移植过程有一些区别,这里记录一下。
准备工作
1. 主机环境:Ubuntu14.04,开发板:Tiny4412,ARM Cortex-A9处理器。
2. 官网下载源码包
qt-everywhere-opensource-src-5.4.0.tar.gz,这里选择下载的是gz格式的源码包,而不是将源码和qtcreator打包好的run文件。因为试过run文件一方面文件太大,另一方面安装得到的源码包和gz格式的有一些不同,比如找不到qtbase,影响到后续的配置,所以最好选择gz格式。
3. 解压
tar -zxvf qt-everywhere-opensource-src-5.4.0.tar.gz
解压到某些路径下可能需要root权限,我的路径是/opt/qt-everywhere-opensource-src-5.4.0,这里的解压路径关联到后面QtCreator中Kits的路径配置。
4. 配置交叉编译器的路径
修改/etc/profile文件,在系统环境变量PATH中添加交叉编译器的路径。
export PATH=/opt/FriendlyARM/toolschain/4.5.1/bin:$PATH
这是我在/etc/profile文件末尾添加的内容,其中/opt/FriendlyARM/toolschain/4.5.1/bin是交叉编译器的路径。配置完成后使用命令
source /etc/profile
使得环境变量立即生效。配置完成后可以通过
echo $PATH
查看交叉编译器的路径是否已经添加到系统环境变量PATH中。
可以查看交叉编译器的版本号:
arm-linux-gcc -v
如果能够正常显示出交叉编译器的版本号,则说明配置成功。
QT5.4.0的交叉编译
1. 指定目标平台的架构和交叉编译器的类型
QT5中针对不同的目标平台都有相应的配置文件夹,只需修改对应目标平台文件夹中的配