RK3568开发笔记(七):在宿主机ubuntu上搭建Qt交叉编译开发环境,编译一个Demo,目标板运行Demo测试

简介: 在之前的博文中已经搭建好了一个比较完善的ubuntu宿主机,都很完善了但是发现没有Qt交叉编译开发环境,所以还需要搭建一套Qt交叉编译开发环境。

前言

  在之前的博文中已经搭建好了一个比较完善的ubuntu宿主机,都很完善了但是发现没有Qt交叉编译开发环境,所以还需要搭建一套Qt交叉编译开发环境。


补充说明

  本篇是基于《RK3568开发笔记(三):RK3568虚拟机基础环境搭建之更新源、安装网络工具、串口调试、网络连接、文件传输、安装vscode和samba共享服务》的虚拟机上进行Qt交叉编译搭建的。


在ubuntu上安装桌面版Qt

  (PS:这里就是安装qt的ubuntu开发环境,包含了qtcreator和支持gcc的编译器的桌面编译板本。)

步骤一:下载Qt5.14.2

  

步骤二:安装桌面板本

  (PS1:安装qt的时候,请先断网,不然一定要登录)

  (PS2:qt5.14.2是官方给的板本,非必要前提下最好不要自行更改板本)

  

  

  

  

  

  安装完成,打开QtCreator,如下图:

  


创建一个hello world应用Demo

步骤一:新建Qt项目

  新建一个testDemo测试工程:

  

  

  

  这里注意是桌面gcc板本:

  

步骤二:做一个简单的工程

  让其使用全屏/正常显示切换:

  

步骤三:本机运行测试

  

  点击“全屏切换”:

  

# 在ubuntu上搭建交叉编译Qt编译器(测试官方提供的buildroot的qt板本)   (PS:官方提供的是buildroot的qt交叉编译环境,这里我们先测试一下是否可以使用该板本的进行显示)。 ## 步骤一:下载解压   下载官方提供的编译qt的包:   ![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/c832d377c5d742cc853fdbad15a9eddb.png)

  放到宿主机上,解压:

  

步骤二:打开QtCreator配置环境

  配置Qt板本的qmake

  

  

  配置交叉编译器gcc

  

  

  

  然后新建编译套件:

  

  

步骤三:工程切换至buildroot套件

  

步骤四:编译工程

  

  

步骤五:弄到开发板上去,使用sftp过去

  Ubuntu带了常用的ssh和stfp,用户名和密码都是topeet,所以可以使用常规方式filezile传递过去,运行发现少库,先测试个简单的c工程,再看有没有必要把qt的东西移植过去:

  

  查找交叉编译器文件夹,sysroot里面是有的:

  

  给他弄过去:

  

  

  检查sysroot:

  

  发现没copy过去?(之前是usr/lib,这是在usr/local/lib了)

  

  再次copy(发现Qt5也在,省的单独弄了):

  

  Copy失败,发现大小不够(lib打包有1.4个G,这里只有800MB不到了,就算单独抽出Qt的全库也不止800MB,身为):

  


小结

  用buildroot-qt的交叉编译器编译出来的可以放到ubuntu上,因为他们内核和交叉编译器板本是一样的,ubuntu也是用交叉编译器去构建了的。

  

  但是因为,空间小了,带qt的库移植不过去(后续还需要移植Qt,ffmpeg过去,还有Qt应用,相对比较麻烦,所以不继续了),更换buildroot的系统(因为已经弄好了qt库,然后ubuntu原先以为支持额外usb触摸屏,现在也不支持,那么更换buildroot更合适了)

相关文章
|
22天前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
51 1
|
23天前
|
存储 算法 C语言
用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容
本文探讨了用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容,旨在为开发者提供全面的指导和灵感。
37 2
|
1月前
|
安全 测试技术 持续交付
云计算时代的软件开发与测试:高效、灵活、可扩展
云计算时代的软件开发与测试:高效、灵活、可扩展
|
2月前
|
人工智能 监控 测试技术
云应用开发平台测试
云应用开发平台测试
77 2
|
2月前
|
机器学习/深度学习 弹性计算 自然语言处理
前端大模型应用笔记(二):最新llama3.2小参数版本1B的古董机测试 - 支持128K上下文,表现优异,和移动端更配
llama3.1支持128K上下文,6万字+输入,适用于多种场景。模型能力超出预期,但处理中文时需加中英翻译。测试显示,其英文支持较好,中文则需改进。llama3.2 1B参数量小,适合移动端和资源受限环境,可在阿里云2vCPU和4G ECS上运行。
127 1
|
2月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
74 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
机器学习/深度学习 并行计算 数据可视化
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用PaddleClas框架完成多标签分类任务,包括数据准备、环境搭建、模型训练、预测、评估等完整流程。
147 0
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
|
4天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
30 11
|
1月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
60 3
|
3月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
262 7
Jmeter实现WebSocket协议的接口测试方法
下一篇
DataWorks