Qt 是一个跨平台的图形应用开发框架,被应用在不同尺寸设备和平台上,同时提供不同版权版本供用户选择。MYD-YA157C-V2 使用 Qt 5.14 版本进行应用开发。在 Qt 应用开发中,推荐使用 Qt Creator 集成开发环境,可以在 Linux PC 下开发 Qt 应用,自动化地交叉编译为开发板的 ARM 架构。本文使用 Yocto 构建的 SDK 工具作为交叉编译系统,配合 QtCreator 快速开发图形类应用程序。
1. 硬件资源
无
2. 软件资源
Ubuntu18.04 desktop
Qtcreator4.1
QT-SDK
mxapp2.0
3. 环境准备
需要 ubuntu 桌面系统,后续均在 ubuntu18.04 desktop 版本下操作,桌面系统请自行 安装。需要安装米尔电子提供的 QT-SDK,路径:03-Tools\Complie Toolchain\QT-SDK\qt- sdk.tar.xz,安装方法请查看《MYD-YA157C_Linux 软件开发指南》第 2 章节。在米尔提供的开发镜像包里获取 mxapp2.0 源代码,路径 04-Sources/mxapp2.tar.gz
4. 操作步骤
4.1. 安装 Qt Creator 从 QT 下载包中 或 MYIR 官方包获得 qtcreator 安装包,从 QT 官网下载(以 4.12-rc1 版本为例)官方下载地址:
http://download.qt.io/development_releases/qtcreator/ QtCreator 安装包是一个 ubuntu 系统下的二进制程序,在 ubuntu 的终端下直接执行 就可以完成安装 ./qt-creator-opensource-linux-x86_64-4.12.0-rc1.run
图 4-1. QTCreator 安装
点击 next, 输入账号密码,账号需要自行在官网注册 https://login.qt.io/register
图 4-2. 登录账号密码
其他配置项请自行选择,配置安装路径
图 4-3. 选择安装路径
后续操作按提示安装完成即可
图 4-4. 安装完成
4.2. 配置交叉编译环境
1) 打开 QTCreator,请从终端执行"qtcreator.sh"来启动 QtCreator,参考如下:/opt/qtcreator-4.1.0/bin/qtcreator.sh & 2) 运行 QtCreator 后,依次点击 Tools -> Options ,出现选项对话框,在左边点击 Kits ,右边 选择 Compilers 标签。
图 4-5. 选择编译器
3) 点击右侧 Add ,弹出下拉列表后,选择 GCC ,在下面填写"Name"为"YA157C-GCC", "Compiler path"点击旁边的"Browse.."按钮选 择到 arm-openstlinux_eglfs-linux- gnueabi-g++的路径,例子中的路径是"/opt/st/myir/3.1-snapshot/sysroots/x86_64- openstlinux_eglfs_sdk-linux/usr/bin/arm-openstlinux_eglfs-linux-gnueabi/arm- openstlinux_eglfs-linux-gnueabi-g++"。填写完成后,点击"Apply"。
图 4-6. 选择编译器路径
4) 选择"Qt Version"标签,在右侧点击"Add...",会弹出 qmake 路径选择对话框,这里以 "/opt/st/myir/3.1-snapshot/sysroots/x86_64-openstlinux_eglfs_sdklinux/usr/bin/qmake"为例子。选择”qmake”文件后,点击"Open"按钮。"Version name" 改为"Qt %{Qt:Version} (YA157C-sytem)"。然后点击"Apply"按钮
图 4-7. 配置版本信息
5) 选择左侧"Device",点击右边的"Add..."按钮,填写内容"Name"为"MYD-YA157C- Board","Host name"为开发板的 IP 地址(可以暂时填写任意一个址),"Username"为 "root",然后击"Apply"。(此项为可选项)
图 4-8. 配置设备信息
6) 点击左侧"Build & Run"回到"Kits"标签下,"Name"设置为"YA157C-dev-kit","Device" 选择"MYD-YA157C- Board"选项了。"Sysroot"选择目标设备的系统目录,这里以 "/opt/st/myir/3.1-snapshot/sysroots/cortexa7t2hf-neon-vfpv4-openstlinux_eglfs-linux- gnueabi"例。"Compiler"选择之前配置的名称"YA157C-GCC","Qt version"选择之前 配置的名称"Qt 5.14.1 (YA157C-System)","Qt mkspec"填写为"linux-oe-g++"。其它 默认即可,最后点击"Apply"和"OK"按钮。
图 4-9. 配置开发板信息
4.3.Measy HMI2.0 编译
将 mxapp2.tar.gz 拷贝到 Ubuntu 下的一个工作目录中并解压出源代码。配置为相应 的编译工具套件,就可以编译此例程。在菜单栏选择"File"->"Open File or Project",在打开的对话框中,浏览到"MXAPP"例 程的目录下,选择"mxapp2.pro"文件,点击"Open"按钮。项目打开后,在左侧菜单列中,选择"Projects"图标,右侧界面切换为 manage kits 管 理界面,在"Build & Run"标签下,选择"YA157C"选项的 kit,这样项目就会使用"YA157C" 的相关配置 kit 构建应用。
图 4-10. 打开项目
点击菜单栏"Build"->"Build Project “maxpp2”"按钮,即可完成项目的编译,同时下侧 会有编译过程输出。
图 4-11. 编译项目
图 4-12. 编译完成
QtCreator 构建 mxapp2 项目后,编译好的二进制文件存放在指定的目录下。然后 将 mxapp2 文件拷贝到开发板下运行即可。
图 4-13. 输出目录
5. 参考文献
https://ubuntu.com/download/desktop https://www.qt.io/