米尔电子
直播中

华仔stm32

2年用户 2480经验值
擅长:嵌入式技术
私信 关注
[技术]

【米尔-芯驰D9360商显板试用评测】2、配置QT开发环境

【前言】

D9360商显板,开发显示界面,安装QT的开发环境是迈出的第一步,所谓万丈高楼平地起。迈开这一步,花了我整整两天的时间,在这里先要给米尔的技术支持点个赞,特别是李工,耐心的指导我,迈出了这一步,真的是万分感谢。所以选择米尔,你将可以得米尔科技最优质的技术服务!下面我将创建QT开发环境记录如下,一来方便以后搭建环境做回看,二来,如果有同样的需求的大佬们,如果遇到同样的情况,少走弯路。
【走的弯弯路】
1、选择ubuntu版本,我前面为了追求高版本,我安装了ubuntu22,结果在编译SDK时就遇到问题。后面选择不编译SDK,想直接用source下在的qmake来配置QT环境,结报一大堆的头文件引用的错,手工添加头文件到.pro中,也是填了这个文件的坑又有另一个文件的坑,后面放弃。
2、QT版本的选择,在ubuntu22下面我选择命行安装的qt,但是一直配置不上qmake,最起先以为是QT版本的问题,折腾好久后也还是没有搞定,后面放弃。
3、在ubuntu18.04下面,我选择命行安装QT结果安装的版本是QT5.9的版本,后面也是配置不上编译环境,后面放弃。选择在线安装,结果现在在线安装最低版本也是QT6.0,与SDK的QT5.15.2相差太大,也放弃。
【正确的步骤】
1、安装ubuntu18.04。网上有教程,略过。
2、安装交叉编译器,在《MYD-YD9X Linux 软件开发指南》有详细的教程,我在https://bbs.elecfans.com/jishu_2421322_1_1.html这篇帖子上面有详细的介绍。
3、解压SDK压缩包,把SDK上传到虚拟机后,在虚拟机上新建/home/MYD9X,并把SDK上传到这个目录,安装7z的解压工具。【注】如果在win11下面解压,一会报错,二,即使解压出来,14G的包,上传也需要太久的时间。
4、配置编译选项,进入/home/MYD9X/MYD-YD9X-SDK_V1.0$ 目录下面,为了少出错,技术提示最好用root用户来操作。执行如下命令

lu@ubuntu:/home/MYD9X/MYD-YD9X-SDK_V1.0$ ./build.sh config
===============================================================
=  ####  #####  #    #  ###  ####   #####   #  #   #  ######  =
= #      #      ##  ##   #   #   #  #    #  #  #   #  #       =
=  ####  ####   # ## #   #   #   #  #    #  #  #   #  #####   =
=      # #      #    #   #   #   #  #####   #  #   #  #       =
= #    # #      #    #   #   #   #  #   #   #   # #   #       =
=  ####  #####  #    #  ###  ####   #    #  #    #    ######  =
===============================================================
chip_choose
    1: d9
    2: d9310
    3: d9342
    4: d9350
    5: d9360
    6: d9368
choose:

这里选择5,进入下一步:

select CHIPVERSION=d9360
machine_project_choose
    1: d9360_android_ref
    2: d9360_ref
choose:

下面是选 择安下图的步骤进行操作

chip_choose
    1: d9
    2: d9310
    3: d9342
    4: d9350
    5: d9360
    6: d9368
choose: 5
select CHIPVERSION=d9360
machine_project_choose
    1: d9360_android_ref
    2: d9360_ref
choose: 2
select MACHINE_PROJECT=d9360_ref
boot_mode_choose
    1: ospi1
    2: emmc_only
    3: sdcard
choose: 2
select SD_BOOT_MODE=emmc_only
rootfstype_choose
    1: ubuntu
    2: buildroot
    3: euler
choose: 2
select MACHINE_ROOTFS_TYPE=buildroot
linuxversion_choose
    1: linux
choose: 1

选择回车后,会显示配置成功的样子:

select SD_KERNEL_DIR=/home/MYD9X/MYD-YD9X-SDK_V1.0/source/linux
./build.sh: line 86: .project.conf: Permission denied

然后再执行./build.sh就开始编译了。需要等待好久,我使用16核CPU+16G的内存,编译了差不多3个小时才完成。
7d77fd3179e54a0c2345249c921e9e1.png
最后如果出现这个提示就说明编译成功了:

d2e38618ef2f2dd0b20b8db488f3f96.png

【固件位置】
在固件目录的out下面就是存放编好的固件。这里面就有我们使用QT的重要文件,在后面有使用到。
image.png

【QT安装】
我在前面说使用了N种安装,结果都失败了,最后面只有下载了qt-opensource-linux-x64-5.14.2.run的离线安装包来安装。
image.png

在线下载会非常慢,我是复制好链接后,使用迅雷下载的。
下载好后上传给虚拟机,执行安装。安装教程非常多,这里大家就需要先去注册一个帖号,才能顺利安装完。这里不细说。
【交叉编译工具的配置】
1、新建一个工程。打开菜单tools下面的options
image.png
2、打开Compilers菜单,在Manual下面的C上新建一个编译器选项
image.png
选择的arm-gcc为SDK的文件:/home/MYD9X/MYD-YD9X-SDK_V1.0/out/images_d9360_ref/build_object/ap1_d9360_ref_buildroot/host/usr/usr/bin/aarch64-none-linux-gnu-gcc
3、添加g++的编译器先项,如同上面,新建一个g++的选项,编译器选择为:
image.png
文件为:/home/MYD9X/MYD-YD9X-SDK_V1.0/out/images_d9360_ref/build_object/ap1_d9360_ref_buildroot/host/usr/usr/bin/aarch64-none-linux-gnu-g++

4、点击QT Version选项,在Munal下面新增Qmak,如下图所示
image.png

文件为:/home/MYD9X/MYD-YD9X-SDK_V1.0/out/images_d9360_ref/build_object/ap1_d9360_ref_buildroot/host/usr/usr/bin/qmake
5、配置kit,按下图分别配置好选项。
image.png

到此配置就弄好了,我们打开一个工程加入一个安键与一个标签
image.png

然后选择编译器为D9,进行构建
image.png

【运行效果】
1、把开发板的示例demo停止,用ps查看到进行,
2167 root /usr/bin/mxapp2 -platform eglfs
使用kill杀死这个进程。
2、把生成的工程目录下面的可执行文件上传到开发板,修改好权限,然后执行就可以看到效果如下:
9792280521ec80ba0f79d6f99c2e4b7.jpg
【总结】
开发的第一步,开发环境的创建是最磨人的一步,好多人因此就在这里被劝退。还好我有米尔的李工的大力支持,坚持下来了,成功的迈出了这一步。
再次感谢米尔,感谢电子发烧友论坛!

更多回帖

发帖
×
20
完善资料,
赚取积分