1. 概述
Qt 是一个跨平台的图形应用开发框架,被应用在不同尺寸设备和平台上,同时提供不同版权版本供用户选择。米尔NXP i.MX 93开发板(MYD-LMX9X开发板)使用Qt6.5版本进行应用开发。在Qt应用开发中,推荐使用 QtCreator 集成开发环境,可以在 Linux PC下开发Q 应用,自动化地交叉编译为开发板的 ARM 架构。
本章使用 Yocto 构建的 SDK 工具作为交叉编译系统,配合 QtCreator 快速开发图形类应用程序。
2. 硬件资源
米尔NXP i.MX 93开发板(MYD-LMX9X开发板)
3. 软件资源
ubuntu 20.04 64bit
Qt6.5
交叉编译链
4. 环境准备
需要 ubuntu 桌面系统,后续均在 ubuntu 20.04 64bit版本下操作,桌面系统请自行安装。
5. 安装Qt6.5
从QT下载官网https://download.qt.io/archive/online_installers/4.5/下载qt-unified-linux-x64-4.5.2-online.run安装包。
- 安装QT所需要的库
在安装QTcreator之前需要对主机的环境进行配置,请安装下列资源包
sudo apt-get update
sudo apt install --reinstall libxcb-xinerama0
sudo apt install cmake build-essential libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev cmake
- 将安装包放到Ubuntu下运行
sudo chmod 777 qt-unified-linux-x64-4.5.2-online.run
./qt-unified-linux-x64-4.5.2-online.run --mirror https://mirrors.tuna.tsinghua.edu.cn/qt
- 登录
运行命令后进入安装界面,填入账号,如若没注册需要先自行注册。
图5-1. 输入账号密码
- 选择开发者
可选择个人开发者。
图5-2. 选择开发者
- 禁止发送
选择禁止发送反馈内容。
图5-3. 选择禁止发送
- 选择安装路径
选择安装路径,建议安装在目录/opt下。
图5-4. 安装路径
- 选择安装内容
因为我们需要安装6.5版本,所以需要勾选以下内容。
图5-5. 选择安装内容
- 安装
选择好安装内容好连续点击下一步到安装页面。
图5-6. 等待安装完成
6. 配置交叉编译环境
1)打开 QTCreator,请从终端执行"qtcreator.sh"来启动 QtCreator,参考如下:
2)如果运行失败则需要安装插件,命令如下
3 再次运行成功,出现选项对话框,点击Edit,继续点击Preferences,,在Kits栏选择Compilers标签,如下图所示。
图6-1. 配置Compilers
4) 点击右侧 Add ,弹出下拉列表后,选择 GCC->C++ ,在下面填写"Name"为"LMX9X- G++","Compiler path"点击旁边的"Browse.."按钮选择到aarch64-poky-linux-g++的路径,例子中的路径是"/opt/fsl-imx-xwayland/6.1-mickledore/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++"。(此为米尔提供的编译链,详情请查看《MYD-LMX9X_Linux软件开发指南》2.2章节)填写完成后,点击"Apply"
图6-2. 配置GCC
5)选择"Debuggers"标签,在右侧点击"Add",在name处输入"93-gdb",在path选择路径为/opt/fsl-imx-xwayland/6.1-mickledore/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gdb,填写完成后点击"Apply",如图6-3。
图6-3. 配置Debugger
6)选择"Qt Version"标签,在右侧点击"Add",会弹出 qmake 路径选择对话框,这里以"/opt/fsl-imx-xwayland/6.1-mickledore/sysroots/x86_64-pokysdk-linux/usr/bin/qmake"为例子。选择"qmake"文件后,点击"Open"按钮。"Version name"改为"Qt %{Qt:Version} (LM93-sytem)"。然后点击"Apply"按钮。
图6-4. 选择qmake
7) 选择左侧"Device",点击右边的"Add"按钮,填写内容"Name"为"MYIR-LM93-Board","Host name"为开发板的 IP 地址(可以暂时填写任意一个址),"Username"为"root",然后击"Apply"。(此项为可选项)
图6-5. 选择开发板
8) 点击左侧"Build & Run"回到"Kits"标签下,"Name"设置为"LM93-dev-kit","Device"选择"MYD-LM93-Board"选项了。"Sysroot"选择目标设备的系统目录,这里以"/opt/fsl-imx-xwayland/6.1-mickledore/sysroots/x86_64-pokysdk-linux"例。"Compiler"选择之前配置的名称"93-GCC","Qt version"选择之前配置的名称"Qt6.5.0 (LM93-System)","Qtmkspec"填写为"linux-oe-g++"。其它默认即可,最后点击"Apply"和"OK"按钮。
图6-6. Kits配置
9)将 MXAPP-Qt6.tar.gz 拷贝到 Ubuntu 下的一个工作目录中并解压出源代码。配置为相应的编译工具套件,就可以编译此例程。在菜单栏选择"File"->"Open File or Project",在打开的对话框中,浏览到"mxcpp"例程的目录下,选择"mxcpp.pro"文件,点击"Open"按钮。项目打开后,在左侧菜单列中,选择"Projects"图标,右侧界面切换为 manage kits 管理界面,在"Build & Run"标签下,选择"LM93"选项的 kit,这样项目就会使用"LM93 "的相关配置 kit 构建应用。然后右键选择"mxapp2"点击Build。
图6-7. 开始编译
图6-8. 编译完成
QtCreator 构建 mxapp项目后,编译好的二进制文件存放在指定的目录下。然后将mxapp文件拷贝到开发板下运行即可
图6-9. 保存路径
7. 参考资料
- 下载桌面版Ubuntu
https://ubuntu.com/download/desktop
- QT开发指导
https://www.qt.io/
MYC-LMX9X核心板及开发板
NXP i.MX 93重新定义入门级嵌入式CPU模组
2*Cortex-A55@1.7GHz+Cortex-M33@250MHz,满足高性能和实时性需求;
集成0.5 TOPS NPU,赋能低成本轻量级AI应用;
支持2路千兆以太网接口(1路支持TSN)、 2路 CAN FD接口、 2个 USB2.0接口、8个UART接口、8个I2C、8个SPI、2个I3C;
丰富的显示接口LVDS/MIPI DSI/24Bit RGB,支持1080p60显示;
摄像头支持MIPI CSI、Parallel CSI接口;
工业级-40℃~+85℃,尺寸37mm*39mm,LGA 218PIN设计
应用:充电桩、能源电力、医疗器械、工业HMI、运动控制器、工业显控一体。