【米尔MYB-YT507开发板试用体验】+搭建QT开发环境并测试,最详细步骤解决所有烦恼
<p>上篇之后我们还是进入我们的应用篇,体验时间还有,所以我们不要把时间浪费在编译上,今天就体验下我们的QT开发,其实全志今年在其平台上支持的显示不止是QT的,选择QT体验是因为其代码可以跑在多端,而且基本上是可以跨多个平台运行的。</p><p style=""> </p>
<p style="">我们可以看到其平台下也是有其他GUI支持的。今年LVGL也挺火的,基本上在全志新的片子里的SDK是有支持到的。下面我们进入主题吧,我们先安装Ubuntu上的QT开发。</p>
<p style=""> </p>
<p style="">这里我选择qt5.9在linux上的版本,这个版本是我用的最多的,这个版本避免了登录,再其他方面也是有不错的体验的,不过没有和我们开发板上的开发版本对应,不过这个没有什么问题,区别就是运行一些例子会不一样。</p>
<p style=""> </p>
<p style="">运行之后就会弹出QT安装页面,我们直接NEXT即可。</p>
<p style=""> </p>
<p style="">然后这一步就是登录了,后面的好像是必须要登录才能验证的,这个版本可以直接选择跳过。</p>
<p style=""> </p>
<p style="">之后选择我们的安装路径,这里我就让其自己选择,这里路径可以随便选择,没有啥问题的。</p>
<p style=""> </p>
<p style="">之后跳到我们的组件安装了,组件安装我们是必选QT Creator的这个是QT开发的一个IDE。其他的桌面的QT5.9.1的版本我也建议安装上,这样可以直接在ubuntu上先看到运行效果。</p>
<p style=""> </p>
<p style="">接下来等待安装完成。</p>
<p style=""> </p>
<p style=""> </p>
<p style="">这一步我们进行的是其QT交叉编译环境的搭建,我们电脑一般是X86架构的,生成的可执行文件我们的ARM开发板是不能运行的,所以需要交叉编译成ARM版本,提供给开发板运行。这个工具米尔直接提供了,解压即可。</p>
<p style=""> </p>
<p style="">然后我们安装完成的QT Creator点击Tools下面的Options。配置我们的交叉编译器。</p>
<p style=""> </p>
<p style="">进入到build&run里面选择kits在这里新建我们的交叉编译器。</p>
<p style=""> </p>
<p style="">点击Add添加,名称我们重新命名,方便我们识别,下面的编译器和QT版本都需要进行新建,在上面也有对应的选项。</p>
<p style=""> </p>
<p style="">进如QT Versions中我们选择我们的qmake,这个路径就是解压出来的文件下路径,按照红色框进行选择。</p>
<p style=""> </p>
<p style="">选择好之后,后面直接提示我们的版本了,是QT5.12.5也是我们开发板上的版本。</p>
<p style=""> </p>
<p style="">然后添加我们的gcc和g++编译器。</p>
<p style=""> </p>
<p style="">路径还是自己看下,也是我们的解压的路径下,选择添加什么就选择什么,这里有两个一个gcc一个g++,两个我们的都选择好。</p>
<p style=""> </p>
<p style="">如上就是添加完成了,为了方便名字我们还是重新命名。</p>
<p style=""> </p>
<p style="">然后修改第一个kits,里面内容全部修改成对应开发板的。</p>
<p style=""> </p>
<p style="">接下来就是用QT Creator新建工程了,这里我们选择一个带图形显示的。第一个即可。</p>
<p style=""> </p>
<p style="">名字命令未hello_world。第一个工程简单点即可。</p>
<p style=""> </p>
<p style="">在Kits页面我们勾选两个,把桌面和交叉编译的都勾选上。</p>
<p style=""> </p>
<p style="">这一步和后面都默认,暂时就不修改了。</p>
<p style=""> </p>
<p style="">然后我们可以直接运行桌面的,可以看到弹出一个什么都没有的窗口。这一步新建工程完成也验证完了。</p>
<p style=""> </p>
<p style="">然后修改。ui文件这个就是刚刚显示图像的框,我们可以自己添加一些东西。</p>
<p style=""> </p>
<p style="">可以看到点击后跳出另一个窗口这个窗口就是QT的设计器了,可以设计各种UI界面,所见即所得。我们从左边控件中拖动一个按钮一个label到窗口中,双击就能修改内容,修改成hello world。</p>
<p style=""> </p>
<p style="">然后再次运行桌面,我们就看到显示了。</p>
<p style=""> </p>
<p style="">然后开始我们的交叉编译构建,选择T507。</p>
<p style=""> </p>
<p style="">然后构建出现了错误,我们需要解决,开始我以为是我们的编译器的问题,我添加了下环境变量。</p>
<p style=""> </p>
<p style="">修改/etc/profile添加上我们的交叉编译器的路径。然后重启。</p>
<p style=""> </p>
<p style="">重启在应用中打开QT Creator还是选择我们的hello world工程。但是发现还是有出现上面的问题,一般这时候就是QT自己问题了,编译时输出目标文件夹没有,找不到对应的so文件,也就是动态链接的文件,这时候还是需要我们自己新建一个目录然后放文件进去。</p>
<p style="">/home/lcy/t507/out/t507/demo2.0/longan/buildroot/host/usr/</p>
<p style="">首先这一串就是刚报错的路径,所以我们先创建用户lcy, 使用命令sudo adduser lcy</p>
<p style="">然后一直回车。</p>
<p style=""> </p>
<p style="">之后进入lcy目录,创建文件夹</p>
<p style="">sudo mkdir -p t507/out/t507/demo2.0/longan/buildroot/host/usr/</p>
<p style="">然后把路径下的文件复制过去。</p>
<p style=""> </p>
<p style="">我这里的路径少了一个t507但是用我上面的创建就不会了,直接拷贝一个文件夹。</p>
<p style=""> </p>
<p style="">然后进去ls,看到许多的so文件。就完成了。</p>
<p style=""> </p>
<p style="">然后再构建就没问题了。</p>
<p style=""> </p>
<p style="">然后我们的可执行文件就出来了,可以看下文件类型是ARM aarch64。接下来就是到板子上运行了。</p>
<p style=""> </p>
<p style="">想要运行我们有多种方式把我们的程序下载到我们的开发板上,全志也提供了一个ADB方式,这个后面我们再用起来,我比着急想测试,所以我们的直接拷贝到SD卡中然后插到板子上即可,然后这里我又发现问题了其挂载没有提示,这点就不好了,我们可以通过发现/dev/新增了什么样的设备来发现新出的设备,这里我就发现了新出现了mmcblk1p1。然后我们挂载。挂载完ls目录也出现了我们的程序。</p>
<p style=""> </p>
<p style="">之后直接运行程序是不行的,缺少链接库,这时候我们可以发现其是又自己程序运行的,这时候就要找了,把米尔带的程序替换成我们的。</p>
<p style=""> </p>
<p style="">我一般是在/etc/init.d/rcS这个文件中发现我们开机运行程序,果然其执行了一个qtenv.sh。再去看这个文件。</p>
<p style=""> 找到我们的运行程序了mxapp2,接下来直接替换这个文件名为我们的程序即可。</p>
<p style=""> </p>
<p style="">我们需要搜索下这个文件再什么位置,我们发现其在/usr/bin下我们直接把我们程序也拷贝到里面。然后开机。运行效果如下:</p>
<p style=""> </p>
<p style="">控件有点被压缩了,显示不全了。后续我们再出下视频来讲下这个。</p>
<div id="qb-sougou-search" style="display: none; opacity: 0; left: 10px; top: 44px;">
<p>搜索</p>
<p class="last-btn">复制</p>
<iframe src=""></iframe></div>
<p>qt非常适合嵌入式交互界面设计</p>
<p>感谢楼主分享,注意的地方,这里标记下来!</p>
<p>可以提交米尔了</p>
<p> </p>
<p>我以为是前面的问题解决了,看来是绕开了</p>
nmg 发表于 2022-8-1 11:11
可以提交米尔了
我以为是前面的问题解决了,看来是绕开了
<p>嗯嗯,他们给虚拟机了,到时候还是用他们虚拟机吧,现在做应用了,先不去体验那个了,这个板子还有ubuntu可以体验,还有Android,暂时还没放开。</p>
<div id="qb-sougou-search" style="display:none; opacity:0">
<p>搜索</p>
<p class="last-btn">复制</p>
<iframe src=""></iframe></div>
<p>很详细,谢谢分享</p>
页:
[1]