宿主机交叉编译IMX6Q-Yocto-QT5工程

1 首先使用qt-creater创建一个空白的qt工程,会生成以下几个文件。
宿主机交叉编译IMX6Q-Yocto-QT5工程
2 删除.pro文件,留下其他的源文件即可。
宿主机交叉编译IMX6Q-Yocto-QT5工程
3 导入交叉编译环境,在此/opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi目录****意每次关闭终端以后需要重新导入交叉编译环境。)
宿主机交叉编译IMX6Q-Yocto-QT5工程
4 qmake --version(查看qmake信息)
arm-poky(按两次table键应该自动补全交叉编译工具链)
宿主机交叉编译IMX6Q-Yocto-QT5工程
宿主机交叉编译IMX6Q-Yocto-QT5工程
5 在编译之前在pro文件里追加两行代码
QT += core gui //若不添加,则找不头文件
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets //大于qt4(例如qt5)就需要加入这行告诉编译器qt的版本较新
宿主机交叉编译IMX6Q-Yocto-QT5工程
qmake -project //(初始化qt工程,生成pro文件)
qmake //生产Makefile
make //编译
宿主机交叉编译IMX6Q-Yocto-QT5工程
(不知道是什么原因出错,但是还是生成了Makefile文件,不影响)
宿主机交叉编译IMX6Q-Yocto-QT5工程
最后会生成一个可执行文件 test
使用file命令查看这个可执行文件的信息,里面有arm字样即成功。
宿主机交叉编译IMX6Q-Yocto-QT5工程
6 最后拷贝这个可执行文件到SD卡中,文件系统使用的是yocto的qt5文件系统。