当前位置: 首页 > 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便可以拷贝到开发板上运行了。 

http://www.lryc.cn/news/477908.html

相关文章:

  • 高效率的快捷回复软件 —— 客服宝聊天助手
  • Node.js + MongoDB + Vue 3 全栈应用项目开发
  • 【云原生开发】如何通过client-go来操作K8S集群
  • CSS基础知识六(浮动的高度塌陷问题及解决方案)
  • 开源模型应用落地-glm模型小试-glm-4-9b-chat-vLLM集成(四)
  • .net为什么要在单独的项目中定义扩展方法?C#
  • 动态规划 —— dp 问题-打家劫舍II
  • Java基础-组件及事件处理(上)
  • Python实例:爱心代码
  • 图解大模型训练系列:序列并行3,Ring Attention
  • pyspark基础准备
  • Netty报错
  • Kafka 之顺序消息
  • Kafka 之批量消息发送消费
  • 【大数据学习 | kafka】kafka的偏移量管理
  • 实景三维赋能森林防灭火指挥调度智慧化
  • 【C++课程学习】:string的模拟实现
  • Linux(VMware + CentOS )设置固定ip
  • 安卓 android studio各版本下载地址(官方)
  • 如何在一个 Docker 容器中运行多个进程 ?
  • poetry 配置多个cuda环境心得
  • 网络编程入门
  • Linux-socket详解
  • SQL Server 2022安装要求(硬件、软件、操作系统等)
  • “众店模式”:创新驱动下的商业新生态
  • 54. 螺旋矩阵
  • 剧本杀小程序,市场发展下的新机遇
  • 【系统架构设计师】论文:论基于 ABSD 的软件开发
  • 为什么OLED透明屏在同类产品中显示效果最好
  • 深度学习基础知识-Batch Normalization(BN)超详细解析