tiny4412 Qt环境搭建

1.硬件环境

PC端:ubuntu18.04
开发板硬件平台:tiny4412
内核版本:linux3.5
交叉编译器:arm-linux-gcc
Qt版本:Qt5.6

2.搭建ubuntu下Qt编译环境

  1.在用户目录下的src_pack目录下解压。

[wbyq@wbyq src_pack]$ pwd
/home/wbyq/src_pack
[wbyq@wbyq src_pack]$ tar xvf /mnt/hgfs/ubuntu/pc_install_x64.tar.gz #解压PC配置信息
[wbyq@wbyq src_pack]$ cd pc_install_x64/
[wbyq@wbyq pc_install_x64]$ cd bin/
[wbyq@wbyq bin]$ ./qmake -v  #查看qmake版本信息
QMake version 3.0
Using Qt version 5.6.0 in /home/wbyq/src_pack/qt-everywhere-opensource-src-5.6.0/tmp/lib

  qmake库路径:/home/wbyq/src_pack/qt-everywhere-opensource-src-5.6.0/tmp

   2.创建qmake库路径。

#创建目录
[wbyq@wbyq bin]$ mkdir /home/wbyq/src_pack/qt-everywhere-opensource-src-5.6.0/tmp -pv 
#将当前目录下所有文件拷贝到tmp
[wbyq@wbyq pc_install_x64]$ cp ./* /home/wbyq/src_pack/qt-everywhere-opensource-src-5.6.0/tmp/ -rfdv

3 部署开发板qt环境

  1.解压Qt开发板环境。

[wbyq@wbyq ~]$ cd src_pack/rootfs/  #切换到rootfs目录下
[wbyq@wbyq rootfs]$ tar xvf /mnt/hgfs/ubuntu/Qt5.6_RAM.tar.gz  #解压开发板qt配置资源
[wbyq@wbyq rootfs]$ vim Qt5.6_RAM/qt5.6_path.config  #修改配置文件

在这里插入图片描述

  2.启动开发板,修改配置文件路径

[root@wbyq ] cd Qt5.6_RAM/  #切换到Qt5.6_RAM目录下
[root@wbyq Qt5.6_RAM] vi qt5.6_path.config  #修改qt配置文件

在这里插入图片描述

4.ubuntu下安装Qt软件

  安装必要工具:

sudo apt install make
sudo apt install gcc
sudo apt install g++

1.Qt5.12 下载:
通过网盘分享的文件:qt-opensource-linux-x64-5.12.6.run
链接: https://pan.baidu.com/s/1Ec2Qo7-7_nDGq_OQCBZRNA?pwd=zutf 提取码: zutf
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5 创建qt工程示例

  1.打开qt软件。
在这里插入图片描述
2.新建工程。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
运行效果默认为空白窗口。
在这里插入图片描述

6.设置UI界面

  1.打开UI配置窗口
在这里插入图片描述
2.窗口布局
在这里插入图片描述
3.设置窗口大小
在这里插入图片描述
4.运行测试
在这里插入图片描述

7.编译qt工程到开发板

  1.进入到qt工程目录下。

[wbyq@wbyq 01qt_test]$ pwd
/home/wbyq/qt_project/01qt_test

  2.使用qmake工具生成Makefile文件

[wbyq@wbyq 01qt_test]$ /home/wbyq/src_pack/qt-everywhere-opensource-src-5.6.0/tmp/bin/qmake

在这里插入图片描述
3.执行make,生成可执行文件。

[wbyq@wbyq 01qt_test]$ make

在这里插入图片描述
错误原因:gcc中没有nullptr定义;
解决办法:打开widget.h文件,添加如下代码:
在这里插入图片描述
4.在01qt_test目录下重新执行make。

[wbyq@wbyq 01qt_test]$ ls
01qt_test.pro  01qt_test.pro.user  main.cpp  Makefile  widget.cpp  widget.h  widget.ui
[wbyq@wbyq 01qt_test]$ make

在这里插入图片描述
5.将01qt_test拷贝到板

[wbyq@wbyq 01qt_test]$ cp 01qt_test /home/wbyq/src_pack/rootfs/code/

  6.启动开发板,在开发板下执行01qt_test

[root@wbyq code] ./01qt_test 

在这里插入图片描述

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

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

相关文章

将本地jar包推到远程仓库

前提条件,手里有个jar包想推到maven远程仓库 1. 在maven项目中,输入脚本执行 2. 在电脑中打开PowerShell以管理员身份运行,输入脚本执行 # 使用 Maven 将本地 JAR 文件上传到远程 Maven 仓库(PowerShell 版本) # 注…

企业级监控可视化系统 Prometheus + Grafana

警报(Alerting):使用 Prometheus 的 Alertmanager 或 Grafana 的内置告警功能,在指标异常时发送通知(邮件、Slack、钉钉等)。 服务发现:在云环境中(Kubernetes, Consul等&#xff09…

极简风格PDF格式转换解决方案

虽然PDF非常适合于阅读和分享,但有时我们需要对文档做一些调整,如增加注释、高亮重点信息或者填写表单字段。 它的的界面设计简洁,它有强大的格式转换功能,不单单是将PDF转换成word文档或者PDF转换 excel,还能将PDF文…

Linux 把启动脚本制作成系统服务(通过 systemctl start xxx 启动)

描述 正常我们启动某一个应用时,会新建一个sh脚本,每次调用起来和设置开机自启会非常麻烦 所以把这个启动文件制作成系统服务,每次启动只需要输入以下命令就可以启动 systemctl start xxx也可以设置开机自启 systemctl enable xxx接下来我拿R…

AI应用开发中的安全最佳实践详解

AI应用开发中的安全最佳实践详解 随着大语言模型(LLM)及相关API服务的广泛应用,内容安全成为开发者不可忽视的重要议题。本文将系统梳理在AI应用开发过程中保障安全的技术手段与最佳实践,并结合像 https://api.aaaaapi.com 这样成…

介绍智慧城管十大核心功能之一:风险预警系统

我们的风险预警系统系统包含:排水安全运行预测预警、环卫设施安全运行预测预警、内涝安全运行预测预警、路面塌陷安全运行预测预警、人员密集场所安全运行预测预警及运行统计分析。1. 排水安全运行预测预警1) 排水设施监测 a) 实时数据采集 支持实时采集排水管网的水…

初识Linux · 文件系统

目录 前言: 简单理解文件系统 细节理解 前言: 前文我们介绍了磁盘,介绍磁盘的原因是因为我们需要在理解文件系统之前,通过磁盘的了解,介绍一些文件相关的内容,比如文件是如何在磁盘里面存储的&#xff…

前端数据库 IndexedDB

前端数据库 IndexedDB IndexedDB核心概念解析1. 数据库(Database)2. 对象存储(Object Store)3. 索引(Index)4. 事务(Transaction)5. 游标(Cursor) IndexDB的使…

Cesium入门教程(二)环境搭建(HTML版)

一、快速开始&#xff08;无需安装依赖&#xff09; 1. 创建HTML文件 新建一个 .html 文件&#xff08;如 cesium-demo.html&#xff09;&#xff0c;粘贴以下代码&#xff1a; <!DOCTYPE html> <html> <head><title>Cesium Quick Start</title&g…

数据分析学习笔记4:加州房价预测

一、实验概述本实验旨在利用机器学习技术&#xff0c;基于加州房价数据集&#xff08;California Housing Dataset&#xff09;构建一个房价预测模型。实验涵盖了从数据加载、探索性数据分析&#xff08;EDA&#xff09;、数据预处理到模型构建与评估的完整流程。核心任务是利用…

openEuler Embedded 的 Yocto入门 : 2. 构建一个Hello,world!

获取BitBake 官方下载 git clone https://git.yoctoproject.org/poky cd poky/bitbake国内镜像下载&#xff08;推荐&#xff09; git clone https://gitee.com/openeuler/yocto-poky.git -b v3.3.6 cd yocto-poky/bitbake配置BitBake环境 export PATH/path/to/bitbake/bin:$PA…

人工智能物联网(AIoT)的技术逻辑、核心价值与典型应用场景解析

一、AIoT 技术&#xff1a;从 “连接” 到 “智能” 的底层逻辑 在企业数字化转型过程中&#xff0c;“数据” 常被视为核心资产&#xff0c;但如何让海量数据产生实际价值&#xff0c;却成为多数组织的难题。根据 Gartner 2024 年发布的调查数据&#xff0c;87% 的组织商业智…

SpringBoot系列之实现高效批量写入数据

Spring Boot 实现高效批量插入数据的实践指南 在实际开发中&#xff0c;我们经常会遇到需要批量插入大量数据到数据库的场景。如果使用传统的单条插入方式&#xff0c;不仅效率低下&#xff0c;还会给数据库带来巨大压力。本文将介绍如何使用 Spring Boot 实现高效 批量数据插入…

SQL语言基础知识(2)

在学会创建数据库之后&#xff0c;在数据库中需要创建表&#xff08;实体以表的形式存在&#xff09;&#xff0c;以及对表中存储的数据记录进行定义&#xff0c;相当于 Java 语言中对类编写其属性。在定义前我们需要了解 SQL 语言有哪些数据类型。一、数据类型1.1 数据值类型1…

响应式编程框架Reactor【1】

文章目录一、Reactor 框架概述与理论基础1.1 响应式编程&#xff08;Reactive Programming&#xff09;是什么&#xff1f;1.2 Reactive Streams 规范1.3 响应式编程与 Reactor 的诞生1.4 Reactor核心特性1.5 Reactor与其它响应式框架比较二、Reactor核心类型2.1 Reactor 核心概…

【LeetCode】29. 两数相除(Divide Two Integers)

文章目录29. 两数相除&#xff08;Divide Two Integers&#xff09;1. 题目重述与约束解析2. 算法选择与总体设计3. 核心难点与关键技巧4. 解法一&#xff1a;快倍增&#xff08;重复加倍减法&#xff09;4.1 思路4.2 流程图4.3 正确性要点5. 解法二&#xff1a;位移长除法&…

智能物联网(AIoT)核心技术落地路径与企业数字化转型适配方案

一、行业现状&#xff1a;AIoT 落地潜力与企业转型痛点并存根据中国信通院《2023 年中国物联网发展白皮书》数据&#xff0c;截至 2023 年&#xff0c;我国物联网设备连接数已突破 300 亿&#xff0c;庞大的设备基数为企业数字化转型奠定了技术基础。但与之形成鲜明对比的是&am…

前端文件下载的三种方式:URL、二进制与 Base64 的深度解析

前言在 Web 应用开发中&#xff0c;文件下载是一个常见的功能需求。从简单的图片保存到复杂的报表导出&#xff0c;前端开发者需要根据后端返回的数据格式选择合适的处理方式。本文探讨三种主流的文件下载方式 —— 基于 URL、二进制数据和 Base64 编码的实现原理、区别对比及通…

B站 XMCVE Pwn入门课程学习笔记(8)

这个视频讲的比较难&#xff0c;我花了比较长时间来分析&#xff0c;甚至一个点反复很多次&#xff0c;这也是在学PWN的过程中不可避免的&#xff0c;需要坚持和毅力pwn3:没有system&#xff0c;通过ROP调用write的plt入口&#xff0c;执行write函数&#xff0c;并且将gots里的…

AMGCL介绍和使用

文章目录一、AMGCL 简介1.1 什么是 AMG&#xff1f;1.2 AMGCL 特点二、安装与配置2.1 获取源码2.2 编译依赖&#xff08;可选&#xff09;三、基本使用示例3.1 构造稀疏矩阵&#xff08;以 1D Poisson 为例&#xff09;四、核心组件介绍4.1 后端&#xff08;Backend&#xff09…