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更合适了)

相关文章
|
并行计算 PyTorch TensorFlow
Ubuntu安装笔记(一):安装显卡驱动、cuda/cudnn、Anaconda、Pytorch、Tensorflow、Opencv、Visdom、FFMPEG、卸载一些不必要的预装软件
这篇文章是关于如何在Ubuntu操作系统上安装显卡驱动、CUDA、CUDNN、Anaconda、PyTorch、TensorFlow、OpenCV、FFMPEG以及卸载不必要的预装软件的详细指南。
12766 4
|
监控 Ubuntu Linux
视频监控笔记(五):Ubuntu和windows时区同步问题-your clock is behind
这篇文章介绍了如何在Ubuntu和Windows系统中通过设置相同的时区并使用ntp服务来解决时间同步问题。
540 4
视频监控笔记(五):Ubuntu和windows时区同步问题-your clock is behind
|
Ubuntu 应用服务中间件 nginx
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
本文是关于Ubuntu系统中使用ffmpeg 3.2.16源码编译OpenCV 3.4.0的安装笔记,包括安装ffmpeg、编译OpenCV、卸载OpenCV以及常见报错处理。
1247 2
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
|
Ubuntu Linux C语言
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
本文介绍了在Ubuntu 18.04系统上编译安装OpenCV 3.4.0及其扩展包opencv_contrib 3.4.0的详细步骤,包括下载源码、安装依赖、配置CMake和编译安装,以及常见问题的解决方法。
1560 1
Ubuntu安装笔记(二):ubuntu18.04编译安装opencv 3.4.0 opencv_contrib3.4.0
|
前端开发 测试技术 程序员
在工作中会涉及到的几个环境(概念补充) 办公环境、开发环境、测试环境、线下环境、线上环境/生产环境都是什么,他们之间的关系?
本文解释了在职场中可能会接触到的不同环境,包括办公环境、开发环境、测试环境和生产环境(线上环境),以及它们之间的关系和重要性。
716 1
|
测试技术 数据安全/隐私保护 iOS开发
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
iOS自动化测试方案的第四部分,涵盖了基础环境准备、iPhone虚拟机设置、MacOS虚拟机与iPhone真机的连接,以及扩展问题和代码示例,确保读者能够顺利完成环境搭建并进行iOS自动化测试。
2876 0
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
自己动手写QT多线程demo
本文是作者关于如何编写Qt多线程demo的教程,介绍了如何实现多线程功能,包括可暂停和继续的功能。文章提供了部分示例代码,展示了如何创建线程类、启动和管理线程,以及线程间的通信。同时,还提供了相关参考资料和免费下载链接。
438 0
|
IDE 编译器 开发工具
【Qt】如何搭建Qt开发环境
【Qt】如何搭建Qt开发环境
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
662 1
Qt(C++)开发一款图片防盗用水印制作小工具
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
908 0