为了满足客户在启扬i.MX8M Plus开发板使用过程中编译qt版本的需求,这里小编出一期关于i.MX8M Plus开发板交叉编译qt5.15.2的教程。

如果因为yocto工程过于繁琐而不想拉去工程去编译qt,今天这个教程是个不错的解决方法。

i.MX8M Plus开发板交叉编译qt5.15.2_启扬智能

1编译环境搭建

首先将启扬提供的sdk交叉编译环境先行搭建起来,搭建方式比较简单,直接将启扬提供的工具链赋予执行权限,然后运行安装即可。

默认安装在/opt/目录,安装完成后直接使用source命令就可以在当前窗口使能环境(source /opt/fsl-imx-wayland/5.10-hardknott/environment-setup-cortexa53-crypto-poky-linux)。

如下图所示,表明环境搭建成功:

i.MX8M Plus开发板交叉编译qt5.15.2_配置文件_02

2编译qt5.15.2

第二步先要下载一个qt5.15.2的源码。

下载网址参考:Index of /archive/qt

i.MX8M Plus开发板交叉编译qt5.15.2_开发板_03

https://download.qt.io/archive/qt/

下载并解压完毕后进入源码目录。

编译qt源码主要关心两个文件,分别是编译配置文件和环境配置文件。(这里对编译配置文件以及环境配置文件具体含义不做过多解释,有兴趣的小伙伴可以自行查阅相关资料。)

我这里就直接贴出笔者的两个文件内容,

其中编译配置文件run.sh内容如下:

i.MX8M Plus开发板交叉编译qt5.15.2_i.MX8M Plus_04

环境配置文件根据编译配置文件指引在qtbase/mkspecs/linux-aarch64-gnu-g++/下的qmake.conf文件,内容如下:

i.MX8M Plus开发板交叉编译qt5.15.2_开发板_05

到现在为止比较重要的两步已经完成了,此时需要注意的是,在我们第一步中用sorce命令验证编译器是否正常使用,但是在真正编译的时候我们不能source环境,因为这样会导致与编译器配置文件里的环境冲突,所以我们需要用export命令将编译器声明出来。

export PATH=/opt/fsl-imx-wayland/5.10-hardknott/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/:$PATH

声明出来后依旧使用第一步的命令验证是否声明成功,显示验证成功后,一切就已准备就绪,直接开启make编译即可。

生成的文件会在编译配置文件的extprefix属性后链接的文件夹,笔者这里编译成功后的截图如下:

i.MX8M Plus开发板交叉编译qt5.15.2_启扬智能_06

好了,教程到此结束了,手上有相应设备的小伙伴可以照着教程试一下,如果有缺少库的情况及时安装,为了保险起见一般最好是删除源码重新编译最为稳妥。