I.MX6U嵌入式 Qt开发学习 一 QT 移植到 I.MX6ULL 开发板上运行

一、C++环境设置

二、C++基础

三、QT 移植到 I.MX6ULL 开发板上运行

方式一:使用默认出厂系统

使用的开发板是 阿尔法Linux 开发板 【底板+核心板(EMMC)+ 7寸RGB屏(1024 * 600)】

使用的 ubuntu 版本为 Ubuntu 18.04.6 LTS

安装的QT版本为:qt-opensource-linux-x64-5.12.9.run

参考文档 1:【正点原子】I.MX6U 出厂系统Qt交叉编译环境搭建V1.6.pdf

参考文档 2:【正点原子】I.MX6U 开发板文件拷贝及固件更新参考手册V1.2.pdf

1.1 安装出厂系统 Qt 交叉编译器

1.2 搭建 Qt Creator 交叉编译环境

1.2.1 下载 Qt Creator

1.2.2 安装 Qt Creator

1.2.3 配置 Qt Creator Kits

1.2.4 验证搭建的交叉编译 Kits(用 U盘拷贝到开发板上进行调试)

pdf 文档内容:在 test 工程的同级目录下找到 build-test-ATK_I_MX6U-Debug 文件夹,查看编译出来的可执行程序 test。我们拷贝到出厂文件系统目录下,在串口终端直接执行./test 就可以了。如何拷贝到出厂文件系统目录下需要查看上面提到的 参考文档 2。

注意事项:

1:对 U盘(内存卡、移动硬盘) 的文件系统格式有要求,只能用 FAT32 格式,不能用 NTFS 格式的。

2:使用如下指令打开 Qt Creator。“&”的作用是后台运行。并不推荐使用图标打开 Qt Creator,否则编译过程中引用到其他环境变量可能会出现编译报错。

/opt/Qt5.12.9/Tools/QtCreator/bin/qtcreator.sh &

3:在开发板上运行测试程序后,在串口中打印输出下面的问题。

QStandardPaths: XDG_RUNTIME_DIR未设置,默认为’/var/volatile/tmp/runtime-root’

解决方法如下:在 /etc/profile 末尾增加两句:

export XDG_RUNTIME_DIR=/usr/lib/
export RUNLEVEL=3

然后,刷新全局变量。

source /etc/profile

1.2.5 远程调试 Qt 程序(这里只试验了 rsync 方式)

注意事项:

卡在了设备通信连接的问题上,如下图所示。
I.MX6U嵌入式 Qt开发学习 一 QT 移植到 I.MX6ULL 开发板上运行_第1张图片
问题详细描述:台式机电脑使用 WiFi 网卡,所以网卡口就空出来了,路由器又离得比较远,所以想到用台式机电脑的网卡连接开发板的网卡,但配同一网段的时候没有配好,后来看了正点原子的配网教程视频(《 Linux开发板网络直连电脑的设置方法 》),最后决定还是用一个网线连接路由器吧。

正点原子的配网教程视频链接如下:https://www.bilibili.com/video/BV1QJ411v7xk.

说说这个教程视频:

这个视频教程可能只适合下载根文件系统(镜像),对于我当时尝试向已有文件系统的出厂系统的开发板发送文件并不能适用,此外,我所使用的网段是 192.168.2.x ,视频所使用的网段是 192.168.1.x ,我不想折腾了。而且后面视频也说了,即使配网成功之后,可能 WiFi 和配网只能选一个,最好的解决方式就是找根网线直接连接到路由器。

网线连接开发板上的 ENET2 网口,因为他在内核中才是 eth0 。默认优先使用这一个网口。

1.2.6 Ubuntu 本机 Kits 编译 Qt 应用程序

会出现下面这个问题。

Linux 的 Qt 编译出现:- 1: error: cannot find -lGL

解决方法链接如下:https://blog.csdn.net/u010058695/article/details/100706039. 我试了第一种,可行。

注意:运行自己的QT程序时,要退出出厂系统的桌面,如何退出,总结如下。

1.2.7 退出开发板出厂系统的桌面

参考笔记:https://blog.csdn.net/weixin_42968584/article/details/122399653.

另外,退出开发板出厂系统的桌面还可以点击开发板上的 设置 -> 退出桌面

此外,在【正点原子】I.MX6U 常见问题汇总V1.3.pdf 的第九章也有说明,现截图如下。
I.MX6U嵌入式 Qt开发学习 一 QT 移植到 I.MX6ULL 开发板上运行_第2张图片

方式二:不使用默认出厂系统,需自己移植根文件系统

(暂时不学习)

你可能感兴趣的:(笔记,qt,开发语言)