当前位置: 首页 > news >正文

【北京迅为】《STM32MP157开发板嵌入式开发指南》-第七十七章 交叉编译QT工程

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7+单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板+底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐用,可满足高速信号环境下使用。共240PIN,CPU功能全部引出:底板扩展接口丰富底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块HDMI、CAN、RS485、LVDS接口、温湿度传感器(选配)光环境传感器、六轴传感器、2路USB OTG、3路串口,CAMERA接口、ADC电位器、SPDIF、SDIO接口等


第七十七章 交叉编译QT工程

本章内容对应视频讲解链接(在线观看):

QT跨平台运行之把QT程序交叉编译到ARM开发板 → https://www.bilibili.com/video/BV1tp4y1i7EJ?p=19

注意!!! 视频中是以imx6ULL终结者开发板进行讲解的,以此为参考,我们本手册是以STM32MP157开发板进行讲解的。

本节内容将交叉编译QT工程,运行QT程序在开发板上。开发板上烧写qt5.12.10系统,如果想要更换QT的版本,请参考文件系统构建篇 QT移植部分。

步骤一:

给QT程序布局,然后在构造函数添加自动设置屏幕大小的代码。代码如下:

设置好了以后把qt代码拷贝到Ubuntu上。

#include <QDesktopWidget>
#include <QStyle>
#include <QRect>QDesktopWidget *deskTopWidget = QApplication::desktop();
QRect deskRect = deskTopWidget->availableGeometry();int appH = deskRect.height();
int appW = deskRect.width();
this->setFixedSize(appW, appH);  		
setGeometry(0, 0, appW, appH);	

添加完成如所示:

步骤二:

进入要编译的工程文件夹目录,使用命令

rm -rf time.pro.user

删除time.pro.user文件

 

使用我们在Ubuntu里面安装好的交叉编译器中的qmake生成Makefile,输入:

/opt/qt-5.12.10-arm/bin/qmake

 

生成的Makefile如下图所示: 

步骤三:

成功生成Makefile以后,直接使用make编译就可以,编译成功以后得到的可执行文件就可以在开发板上运行。

 

我们使用file命令查看生成的可执行文件,如下图所示,生成的time为ARM

生成的time便可以拷贝到开发板上运行了。 

相关文章:

【北京迅为】《STM32MP157开发板嵌入式开发指南》-第七十七章 交叉编译QT工程

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器&#xff0c;既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构&#xff0c;主频650M、1G内存、8G存储&#xff0c;核心板采用工业级板对板连接器&#xff0c;高可靠&#xff0c;牢固耐…...

高效率的快捷回复软件 —— 客服宝聊天助手

在电商行业日益繁荣的今天&#xff0c;高效的客户沟通对于企业的成功至关重要。无论是电商平台、居家客服还是其他各类客服行业&#xff0c;都需要一款强大的工具来提升工作效率。今天&#xff0c;我们就来介绍一款高效率的快捷回复软件 —— 客服宝聊天助手。 一、跨平台跨店铺…...

Node.js + MongoDB + Vue 3 全栈应用项目开发

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;node.js篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来node.js篇专栏内容:Node.js MongoDB Vue 3 全栈应用项目开发 在前几篇文章中&#xff0c;我们已经为 Node.j…...

【云原生开发】如何通过client-go来操作K8S集群

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…...

CSS基础知识六(浮动的高度塌陷问题及解决方案)

目录 1.浮动高度塌陷概念 2.下面是几种解决高度塌陷的几种方案&#xff1a; 解决方案一&#xff1a; 解决方案二&#xff1a; 解决方案三&#xff1a; 1.浮动高度塌陷概念 在CSS中&#xff0c;高度塌陷问题指的是父元素没有正确地根据其内部的浮动元素或绝对定位元素来计…...

开源模型应用落地-glm模型小试-glm-4-9b-chat-vLLM集成(四)

一、前言 GLM-4是智谱AI团队于2024年1月16日发布的基座大模型&#xff0c;旨在自动理解和规划用户的复杂指令&#xff0c;并能调用网页浏览器。其功能包括数据分析、图表创建、PPT生成等&#xff0c;支持128K的上下文窗口&#xff0c;使其在长文本处理和精度召回方面表现优异&a…...

.net为什么要在单独的项目中定义扩展方法?C#

使用 扩展方法&#xff08;Extension Methods&#xff09; 和创建 扩展类&#xff08;Extension Class&#xff09; 在 C# 中有几个特定的目的&#xff0c;主要是为了提高代码的可扩展性、灵活性和可读性。让我们来详细解释这些概念以及为什么扩展类需要是静态的。 为什么使用…...

动态规划 —— dp 问题-打家劫舍II

1.打家劫舍II 题目链接&#xff1a; 213. 打家劫舍 II - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/house-robber-ii/ 2. 题目解析 通过分类讨论&#xff0c;将环形问题转换为两个线性的“打家劫舍|” 当偷第一个位置的时候&#xff0c;rob1在&#…...

Java基础-组件及事件处理(上)

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 Swing 概述 MVC 架构 Swing 特点 控件 SWING UI 元素 JFrame SWING 容器 说明 常用方法 示例&a…...

Python实例:爱心代码

前言 在编程的奇妙世界里,代码不仅仅是冰冷的指令集合,它还可以成为表达情感、传递温暖的独特方式。今天,我们将一同探索用 Python 语言绘制爱心的神奇之旅。 爱心,这个象征着爱与温暖的符号,一直以来都在人类的情感世界中占据着特殊的地位。而通过 Python 的强大功能,…...

图解大模型训练系列:序列并行3,Ring Attention

在序列并行系列中&#xff0c;我们将详细介绍下面四种常用的框架/方法&#xff1a; Megatron Sequence Parallelism&#xff1a;本质是想通过降低单卡激活值大小的方式&#xff0c;尽可能多保存激活值&#xff0c;少做重计算&#xff0c;以此提升整体训练速度&#xff0c;一般…...

pyspark基础准备

1.前言介绍 学习目标&#xff1a;了解什么是Speak、PySpark&#xff0c;了解为什么学习PySpark&#xff0c;了解课程是如何和大数据开发方向进行衔接 使用pyspark库所写出来的代码&#xff0c;既可以在电脑上简单运行&#xff0c;进行数据分析处理&#xff0c;又可以把代码无缝…...

Netty报错

问题&#xff1a;因客户反馈Netty版本低&#xff0c;影响性能&#xff0c;建议提升。于是&#xff0c;我将所有Netty版本从4.1.82.Final到4.1.114.Final后&#xff0c;报下面的错误&#xff0c;java.lang.NoClassDefFoundError: io/netty/util/Recycler$EnhancedHandle&#xf…...

Kafka 之顺序消息

前言&#xff1a; 在分布式消息系统中&#xff0c;消息的顺序性是一个重要的问题&#xff0c;也是一个常见的业务场景&#xff0c;那 Kafka 作为一个高性能的分布式消息中间件&#xff0c;又是如何实现顺序消息的呢&#xff1f;本篇我们将对 Kafka 的顺序消息展开讨论。 Kafk…...

Kafka 之批量消息发送消费

前言&#xff1a; 前面我们分享了 Kafka 的一些基础知识&#xff0c;以及 Spring Boot 集成 Kafka 完成消息发送消费&#xff0c;本篇我们来分享一下 Kafka 的批量消息发送消费。 Kafka 系列文章传送门 Kafka 简介及核心概念讲解 Spring Boot 整合 Kafka 详解 Kafka Kafka…...

【大数据学习 | kafka】kafka的偏移量管理

1. 偏移量的概念 消费者在消费数据的时候需要将消费的记录存储到一个位置&#xff0c;防止因为消费者程序宕机而引起断点消费数据丢失问题&#xff0c;下一次可以按照相应的位置从kafka中找寻数据&#xff0c;这个消费位置记录称之为偏移量offset。 kafka0.9以前版本将偏移量信…...

实景三维赋能森林防灭火指挥调度智慧化

森林防灭火工作是保护森林资源和生态环境的重要任务。随着信息技术的发展&#xff0c;实景三维技术在森林防灭火指挥调度中的应用日益广泛&#xff0c;为提升防灭火工作的效率和效果提供了有力支持。 一、森林防灭火面临的挑战 森林火灾具有突发性强、破坏性大、蔓延速度快、…...

【C++课程学习】:string的模拟实现

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;C课程学习 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 一.string的主体框架&#xff1a; 二.string的分析&#xff1a; &#x1f354;构造函数和析构函数&a…...

Linux(VMware + CentOS )设置固定ip

需求&#xff1a;设置ip为 192.168.88.130 先关闭虚拟机 启动虚拟机 查看当前自动获取的ip 使用 FinalShell 通过 ssh 服务远程登录系统&#xff0c;更换到 root 用户 修改ip配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33 重启网卡 systemctl restart network …...

安卓 android studio各版本下载地址(官方)

https://developer.android.google.cn/studio/archive 别用中文&#xff0c;右上角的语言切换成英文...

【ACCELERATED GSTREAMER PERFORMANCE GUIDE】Choosing Between videoconvert and nvvidconv for Optimal Vid

1. 理解videoconvert与nvvidconv的核心差异 第一次接触GStreamer视频处理时&#xff0c;很多人都会困惑到底该用videoconvert还是nvvidconv。这个问题就像选择交通工具&#xff1a;你是要经济实惠的公交车&#xff08;CPU处理&#xff09;&#xff0c;还是要速度更快的出租车&a…...

实战踩坑:在华为ENSP模拟器上配置OSPF NSSA区域,为什么外部路由没传出去?

华为ENSP模拟器中OSPF NSSA区域外部路由失效的深度排查指南 当你在华为ENSP模拟器中配置OSPF NSSA区域时&#xff0c;是否遇到过这样的困境&#xff1a;明明按照教程步骤操作&#xff0c;外部路由却像被黑洞吞噬一般无法传递到其他区域&#xff1f;本文将带你深入这个技术迷宫的…...

基于Moondream2的工业质检系统:缺陷检测与分类

基于Moondream2的工业质检系统&#xff1a;缺陷检测与分类 1. 为什么传统质检方式正在被重新思考 产线上的质检员每天要盯着成百上千件产品&#xff0c;眼睛酸涩、注意力下降&#xff0c;漏检率悄悄爬升。一台设备表面划痕只有0.1毫米宽&#xff0c;人眼在连续工作两小时后&a…...

Lychee Rerank在遥感影像分析中的应用:多源地理数据关联

Lychee Rerank在遥感影像分析中的应用&#xff1a;多源地理数据关联 1. 引言 每天&#xff0c;卫星和无人机都在产生海量的遥感影像数据。地质勘探团队需要从数万张卫星图片中找出可能的矿藏迹象&#xff0c;环境监测人员要追踪森林覆盖变化&#xff0c;城市规划者则要分析城…...

Suno API:生成 AI 音乐的完整指南

简介 Suno API 是 Ace Data Cloud 提供的一项强大服务&#xff0c;旨在将 AI 音乐生成能力集成到您的应用程序中。借助这一稳定且全面的 RESTful API&#xff0c;您可以创建自定义歌曲、纯音乐、混音、翻唱等。本文将详细介绍如何使用 Suno API&#xff0c;并提供快速上手的指…...

Java全栈工程师面试实录:从基础到实战的深度技术探讨

Java全栈工程师面试实录&#xff1a;从基础到实战的深度技术探讨 一、面试开场 面试官&#xff08;李工&#xff09;&#xff1a;你好&#xff0c;欢迎来到我们公司。我是李工&#xff0c;负责技术面试。今天我们会围绕你的技术栈进行一些深入交流。 应聘者&#xff08;张明&am…...

Cortex-M为何不能运行Linux?解析ARM架构与操作系统的兼容性

1. Cortex-M与Linux的兼容性解析作为一名在嵌入式领域摸爬滚打多年的工程师&#xff0c;我经常被问到这个问题&#xff1a;"为什么我的STM32&#xff08;基于Cortex-M内核&#xff09;不能跑Linux&#xff1f;"要回答这个问题&#xff0c;我们需要从处理器架构和操作…...

Graphormer开源大模型实战:分子图建模替代传统GNN的5大优势解析

Graphormer开源大模型实战&#xff1a;分子图建模替代传统GNN的5大优势解析 1. Graphormer模型概述 Graphormer是微软研究院开发的基于纯Transformer架构的图神经网络模型&#xff0c;专门为分子图&#xff08;原子-键结构&#xff09;的全局结构建模与属性预测而设计。与传统…...

从Gazebo到真实硬件:robot_state_publisher在ROS 2仿真迁移中的5个关键配置项

从Gazebo到真实硬件&#xff1a;robot_state_publisher在ROS 2仿真迁移中的5个关键配置项 当你在Gazebo中完成机器人运动算法的仿真验证后&#xff0c;下一步就是将这套系统部署到真实硬件上。这个过程中&#xff0c;robot_state_publisher的配置往往是工程师们最容易踩坑的环节…...

Pixel Epic · Wisdom Terminal保姆级教程:备份与恢复研报工程文件全指南

Pixel Epic Wisdom Terminal保姆级教程&#xff1a;备份与恢复研报工程文件全指南 1. 引言&#xff1a;为什么需要备份研报工程文件 在Pixel Epic Wisdom Terminal中&#xff0c;每一份研究报告都是你与AI贤者共同创造的智慧结晶。就像RPG游戏中的存档点一样&#xff0c;定…...