AXU2CG-E开发板QT测试

背景

开发板说明

使用的是芯驿电子科技(上海)有限公司,基于 XILINX Zynq UltraScale+ MPSoCs 开发平台的AXU2CG-E开发板。

写作背景

因为项目需要,我得熟悉本开发板的基本开发流程。在阅读“course_s3_ALINX_ZYNQ_MPSoC开发平台Linux基础教程V1.01.pdf”教程的“第六章 QT 和 OPENCV 交叉编译开収环境”部分内容是,复现实验Demo遇到了写问题,在此将解决办法记录下来,供大家参考。

实验环境

  • 虚拟机:VMware® Workstation 16 Pro/16.2.2
  • Ubunut:Ubuntu 18.04.4 LTS
  • 软件:vivado 2020.1
  • petalinux:petalinux 2020.2
  • QT Creator:qt-opensource-linux-x64-5.7.1
  • MobaXterm_Persona:MobaXterm_Personal_20.3

环境搭建过程中的问题

本部分内容与QT界面的输出无关,可跳过

问题1:QT编译报错,提示“cannot find -lGL”

【问题描述】:在网上查阅相关的解决办法过程中,意识到自己应该是重新安装了VMware Tools,所以导致QT本地编译的时候报错。网上给出的解决办法是重新安装libgl1-mesa-dev库。但是,在安装该库的过程中,Terminal又提示一大堆依赖错误。(由于博主已经解决了相关问题,所以没有相关报错的截图,如果有结果,参考意义会大一点)就如这篇博客:Ubuntu 16.04 下Qt编译出现“cannot find -lGL”及无法安装libgl1-mesa-dev解决。

【解决办法】:我还是大着胆子使用aptitude命令尝试安装libgl1-mesa-dev(不大了,重新装一遍虚拟机嘛),具体的操作参考这篇博客:libgl1-mesa-dev : 依赖: libgl-dev 但是它将不会被安装。

问题2:登录虚拟机后,桌面假死,点击鼠标没有反应

【问题描述】:按照问题1的解决办法操作之后,重启再次进入虚拟机系统的时候:在登录界面可以正常点击密码输入框,键盘输入密码进行登录。但是,登录进入桌面之后,鼠标和键盘失灵,点击没有任何反应。

【解决办法】:进入Ubunut Recovery模式,使用命令行安装xserver-xorg-input-all。进入Ubunut Recovery模式的小技巧:电源–>开机–>发送Ctrl+Alt+Del(E)–>快速按下Esc按键,一遍不成功,就多操作两遍。可以参考这篇博客:ubuntu18.04 进入登陆界面后,解决鼠标键盘失灵问题。

解决了上述两个问题之后,使用QT本地编译,可没有问题了。本来,即使本地有问题,但是交叉编译是没有问题的(前提是交叉编译链配置完整),也就是说编译的qt_test程序是可以在开发板里面跑的,但是程序员哪里没有点强迫症呐。

QT 输出问题

【问题描述】:在实验复现过程中,教程中只说了在开发板中设置:export DISPLAY=:0.0,那到底QT界面输出在哪里呢?开发板上面有两个40pin的接口,正好配套的模块中有一个7寸的触摸屏。我想着是不是QT界面会自动输出到LCD显示屏幕上面,但是连个40pin的插口我都是试了,没任何输出界面。针对这个问题,我意识到我使用的是 course2 中的 ps_hello工程编译生成的xsa,没有设置LCD的驱动接口,所以必然不会在LCD上面显示。除此之外,虽然开发板上面还预留一个DP接口,但是我手边没有合适的DP线。

【解决办法】:我想着,能不能将QT界面输出到MobaXterm_Persona上面了,实验了一下,果真可以(哈哈哈哈哈哈)。具体的实现方式参考这篇博客:MobaXterm以图形界面GUI形式登录打开远程linux ubuntu服务器桌面。值得说明的是,我并没有Specify username。然后执行可执行文件,就可以正确输出QT界面了,效果如下:
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐