【QT5】<重点> IMX6ULL开发板运行QT

news2025/2/28 3:17:09

目录

1. 安装交叉编译器

2. 命令行交叉编译QT项目

3. 运行该可执行程序

4. 开发板上运行UDP程序与Ubuntu通信


1. 安装交叉编译器

第一步:进入正点原子论坛找到IMX6ULL开发板的资料,下载“开发工具”,将“交叉编译工具”中的fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.1.0.sh传输到Ubuntu中。

第二步:将其添加可执行权限,之后运行它。

第三步:每次编译都需要执行下列代码,使能环境变量。之后可以输入qmake -v来查看是否成功,成功的话会显示QMake的版本。

source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

2. 命令行交叉编译QT项目

第一步:找到QT项目的目录。

第二步:命令行输入qmake xxx.pro。会在QT项目的目录中生成Makefile和.qmake.stash文件。

第三步:命令行中输入"make"即可编译。为了加快编译速度,可以使用多线程来编译,即命令"make - j 2" 其中2为虚拟机最大的内核数量。编译完成后,能够发现可执行文件,如下图所示。

第四步:将该可执行文件传输至开发板上。传输方法一:开发板挂载Ubuntu的nfs目录,详见【嵌入式Linux笔记】第二篇:环境搭建 & IMX6ULL开发板。传输方法二:通过U盘拷贝至开发板,U盘在Linux中的文件目录一般为/media/alientek/。

3. 运行该可执行程序

第一步:出现以下错误:

这里发现百问网的IMX6ULL_PRO开发板在运行QT项目时出现问题!!!

解决方法:在开发板的命令行中配置环境变量export QT_QPA_PLATFORM=linuxfb,之后就能显示了。

第二步:尽管界面能够显示,但是仍然报错并且触摸屏点击无效:

  • 解决上面一行错误:配置环境变量export XDG_RUNTIME_DIR=/var/run/
  • 下面是键盘库没有,由于我们开发板不用键盘,因此这里忽略。
  • 解决屏幕点击无效:配置环境变量export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event1

总结:出现以上错误皆是因为环境变量没有配置好,并且每次开机后都需要配置。因此,我们做一个一劳永逸的方法,即修改开发板的配置文件/etc/profile执行vi /etc/profile,将如下代码写入文件中:

export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event1
export QT_QPA_PLATFORM=linuxfb
export XDG_RUNTIME_DIR=/var/run/

4. 开发板上运行UDP程序与Ubuntu通信

【1】代码来源:【QT5】<总览五> QT多线程、TCP/UDP中的单播程序。

【2】运行效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1823400.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【递归、搜索与回溯】DFS解决FloodFill算法

一、经验总结 之前我们已经研究过了BFS解决FloodFill算法:【优选算法】BFS解决FloodFill算法-CSDN博客 DFS只是遍历顺序发生了变化,其他需要注意的点大差不差。 二、相关编程题 2.1 图像渲染 题目链接 733. 图像渲染 - 力扣(LeetCode&am…

少样本学习元学习

基本概念 首先是机器学习: 然后,什么是元学习(what is meta learning?) 之前,Component都是让人自己设置的。在Meta Learning中,我们期望它能够自己学出来。 不同的meta learning方法就是想办法去学learning algori…

GoogLeNet(InceptionV3)模型算法

GoogLeNet 团队在给出了一些通用的网络设计准则,以期望在不提高网络参数 量的前提下提升网络的表达能力: 避免特征图 (feature map) 表达瓶颈:从理论上讲,尺寸 (seize) 才包含了相关结构等重要因素,维度(channel) 仅仅…

教师博览杂志教师博览杂志社教师博览编辑部2024年第15期目录

高校教师园地 “心流”融入高职劳动教育课程的思考探究 宫婷婷;柳学知; 4-6 高职院校思政教育与就业创业指导融合机制研究 袁晓旭; 7-9 职教社助力乡村人才振兴的实践探索和功能定位——以江西省为例 涂恬; 10-12 育人之道《教师博览》投稿:cn7kantouga…

这家来自内蒙古的物流企业,用另一种方式减碳超500吨

2016年,多蒙德实业集团整合旗下物流及运销板块,组建成立了内蒙古多蒙德科技有限公司(以下简称“多蒙德”),整合互联网、大数据及智慧物流为一体,自主研发多蒙达网络货运平台及多个供应链智慧系统&#xff0…

对话分析数据:揭秘企业销售场景的隐形金矿

在数字化浪潮席卷全球的今天,企业对于数据的依赖愈发显著。尤其是在销售领域,数据不仅能够帮助企业精准定位市场,还能在竞争激烈的商海中为企业指明航向。每一个电话、每一次会议、每一段对话,都是企业宝贵的数据资产。然而&#…

机器学习二分类数据集预处理全流程实战讲解

本文概述 本文对weatherAUS数据集进行缺失值分析并剔除高缺失特征,合理填补剩余缺失值,利用相关性筛选关键特征,采用多种机器学习模型(如逻辑回归、随机森林等)在80%训练集上训练,并在20%测试集上预测明日降…

NG32031单片机串口初始化

目录 1. 串口基础 2. 串口配置步骤 3. N32G031串口初始化示例 3.1开启时钟 3.2 配置GPIO 3.3 配置USART 3.4 使能中断(如果需要) 3.5. 示例代码 4. 调试和验证 5. 注意事项 6. 额外功能 NG32G031单片机的串口(UART)通常…

【硬件模块】SSD1306 OLED屏幕(含GD32ESP32驱动代码)

OLED屏幕 最近在写GD32的文章,之前STM32有OLED屏幕来展示数据,ESP32可以直接打印到电脑屏幕上,GD32的话手上就没有办法了。 虽然是可以直接把STM32的OLED屏幕的驱动代码改改移植到GD32上面,不过想了想干脆写一个文章来说说如何驱…

苍穹外卖笔记-13-导入地址簿功能代码、用户下单、订单支付

文章目录 1. 导入地址簿功能代码1.1 需求分析和设计1.1.1 产品原型1.1.2 接口设计1.1.3 表设计 1.2 代码导入1.2.1 Mapper层1.2.2 Service层1.2.3 Controller层 1.3 功能测试 2. 用户下单2.1 需求分析和设计2.1.1 产品原型2.1.2 接口设计2.1.3 表设计 2.2 代码开发2.2.1 DTO设计…

「动态规划」买卖股票的最佳时机,如何处理多笔交易?

188. 买卖股票的最佳时机 IVhttps://leetcode.cn/problems/best-time-to-buy-and-sell-stock-iv/description/ 给你一个整数数组prices和一个整数k,其中prices[i]是某支给定的股票在第i天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成k笔交易。…

嵌入式linux中内存管理基本原理

各位开发者,大家好,今天主要给大家分享一下,如何使用linux系统中的内存管理。 前面我们学习了很多Linux内存方面的知识,比如:虚拟地址空间,进程空间,内存映射,页表机制等,我们学了这么多知识,似乎对Linux内存似懂非懂,为什么会出现这样的问题?原因在于我们缺…

关于FPGA对 DDR4 (MT40A256M16)的读写控制 2

关于FPGA对 DDR4 (MT40A256M16)的读写控制 2 语言 :Verilg HDL EDA工具:ISE、Vivado、Quartus II 关于FPGA对 DDR4 (MT40A256M16)的读写控制 2一、引言二、DDR4的简介四、DDR4 SDRAM状态框图 关键词&#x…

Java多线程学习笔记

文章目录 1. 引言1.1 多线程的重要性 2. 什么是多线程2.1 线程的定义和基本概念2.2 线程与进程的区别 3. 创建线程的方式3.1 继承Thread类3.2 实现Runnable接口,重写run方法3.3 实现Runnable接口,重写call方法3.4 匿名内部类创建Thread子类对象3.5 使用匿…

ROS中Twist消息类型

Twist消息类型在Robot Operating System (ROS)中是一个常见的数据结构,主要用于描述物体的线性速度和角速度。这种消息类型在ROS的geometry_msgs包中定义,常用于机器人运动控制,尤其是当需要向机器人发布速度指令时。 Twist消息由两个Vector…

21.1 文件-文件的重要性、ioutil包

1. 文件的重要性 文件的本质就是硬盘中的数据,包括各种程序、文档、多媒体甚至系统配置。 各种类UNIX操作系统的一个重要特征就是将一切皆视为文件。 可以象访问文件一样访问键盘、打印机等硬件设备可以象访问文件一样访问管道、套接字等内核资源 各种类UNIX操作…

网络基础OSI国际互联

这里所指的网络是计算机网络,由许许多多的不同的网络设备以及电子设备构建的一个ip的网络,这个就是工作对象 网络是随着计算机的出现,军事沟通 出现的问题:物理层设备,总线,共享设备,会产生冲突…

用 C 语言实现求补码的运算

缘起 前两天程序中需要求一堆参数的补码,一时犯懒,想从CSDN上搜一个勉强能用的代码借鉴一下,结果几乎没有搜到一个靠谱的!这种求补码的操作,用脚趾头想想也应该知道要用C或者C的位运算来实现呀。结果搜到的一些实现方…

MyBatis-Plus整合达梦数据库

文章目录 1. 环境准备2. 创建Spring Boot项目3. 引入依赖4. 配置数据源5. 配置MyBatis-Plus6. 创建实体类7. 创建Mapper接口8. 创建Service类9. 创建Controller类10. 创建Mapper XML文件11. 测试12. 进一步优化12.1 配置分页插件12.2 配置乐观锁插件13. 总结🎉欢迎来到Java学…

vue+elementui+springboot图片上传

1、前端代码 <template><div><el-uploadclass"avatar-uploader"action"http://localhost:8081/ch06/demo/uploadAvatar":show-file-list"false":on-success"handleAvatarSuccess":before-upload"beforeAvatarUpl…