嵌入式开发板QT库的安装方法之优秀

简介: 嵌入式开发板QT库的安装方法之优秀

第一:【实验目的】

1、熟悉QT库的安装

2、移植QT库到开发板

第二:【实验步骤

1.安装步骤

2.由于aarch64交叉编译工具已经安装过,因此只需要从第三步交叉编译qt库开始

efe0466d788f4b4db68bc0d4147d50fb.png08e5e6fa03a94c54bcf43b8226567174.png

注意:因为我们的文件是.zip格式,把命令替换为unzip 文件名.zip

3.进入解压后的路径,执行下面的命令

e33239f306d44cbf8ee2770ee8267ee2.png91b30beca3cd4e16a4b4f59157893113.png

注:1.文件路径中/opt/后面的这个文件根据自己安装时的文件夹名字进行修改

       2.如果没有gedit 可以换成vim打开 sudo vim 文件路径

4. 搭建环境

537846e7d97d43e78e98690396ec2309.png

a1cd283fc6dd4210aa0e097f9d1d6f70.png

1054c4529a9f4cce81da017a33dba6d7.png

注意:1.正常执行./auto.sh会显示Permission deny,也就是权限不够,就算chmod加那个文件加权限,他会继续显示下一个文件没有权限,这是由于这个文件夹是从Windows系统拷贝而来的文件,Windows系统中没有执行权限这个说法,而拷贝到Linux后自然也没有,因此需要给每个文件添加执行权限,但这样一个一个添加相当麻烦,因此使用su命令进入超级用户模式,再执行./auto.sh


        2.继续执行,这时如果显示错误aarch64-linux-gnu-g++或者aarch64-linux-gnu-gcc没有找到,这是因为我们配置的交叉编译环境变量是在普通用户下的,先进入普通用户模式(若你是超级用户模式就输入exit),输入aarch64,然后连续按几次Tab键,若出现有aarch64-linux-gnu-gcc或者aarch64-linux-gnu-g++等等,若你此时处于普通用户下,有这些提示信息,则说明你普通用户下交叉编译的环境配置没有问题,输入su进入超级用户,再次执行上面的操作,此时,你会发现没有aarch64-linux-gnu-gcc或者aarch64-linux-gnu-g++。


解决方法:


1.先退出超级用户模式


2.输入 which aarch64-linux-gnu-gcc  //获取命令存储的位置


3.通过上面的输出情况进入到gcc-aarch64-linux-gnu/bin目录下


4.输入pwd,获取当前目录路径,将路径复制


5.将你的路径替换掉后面标红部分并复制整一句,


export PATH="/opt/gcc-aarch64-linux-gnu/bin:$PATH"


6. 输入sudo -s


7. 输入vim ~/.bashrc 将刚刚复制的内容放置到文件最下面,保存退出


8. 输入 source ~/.bashrc 更新源


9. 重新进入/opt/文件目录下,继续之前的操作


10.若make后出现write error:no space left on device ,是因为分配给Ubuntu的磁盘空间满了,使用df -h可以查看内存剩余,最简单的解决办法是删除一些文件(我这里是删除了之前移植过来的rk3399的内核备份文件),安装大概需要11G的内存。其他方法是扩充磁盘,这个不知道怎么弄。


7d154e60a1cc4e4a93723b2c4bad83e8.png

11.make完成后执行make install


12.将qt-opensource-linux-x64-5.9.0.run拷贝到/opt目录下(先复制到共享文件夹,再sudo chmod 777 qt-opensource-linux-x64-5.9.0.run,给足权限再mv到/opt)


13.执行./opensource-linux-x64-5.9.0.run,next->skip->next(路径可以自己改)->next->I have read…->next->install,可以看到启动界面。


94b9ec8e190845edb69f564737f80c4b.png

14.点击tools->option

8117b501400c4155bf2fd731aa699e26.png

15.点击Build & Run,配置编译器选项

50cd91e3c014456e9bb4d28283dca28c.png

16.点击Complilers,再点击GCC->C,选择添加GCC编译器路径,不知道路径的还是用which看

7a5533fb136f4c92af89431e90fcaeda.png

5f9f5782feaf4dd79364a29095feb3ef.png

8acc1800286447428f9cf57d57197320.png

17.再点击GCC->C++,选择添加G++编译器路径,同上面,最后点击Apply

fef76c52ac8d47f9b6870394c2721740.png

a93e38d3c53142878c3f74da8b47fc33.png

4650ee555eb54964af103ce5384e1523.png

18.点击Qt Version -> Add ->Browerse…->选择make install 后生成的文件夹中qmake的位置路径一般在图中那个位置(按这个教程安装的话)

ea98eb937e3047a385e087924f716bc0.png19.

e9be42f416474f9a873d3d08b647660c.png

20.点击Apply->OK

daba2c25509144d0a14c11c24be28a60.png

21.将交叉编译生成的qt库压缩

          sudo tar -zcvf qt5.9.1.tar.gz qt5.9.1-arm

a626e5b583494acf82b93cf4999c5739.png

22.将这个库复制到NFS挂载的文件夹中

sudo cp qt5.9.1.tar.gz /mnt/hgfs/LinuxShare/share/

c4ca8707ae89418b9058b75115360889.png

23.在板子上将文件移动到/opt/目录下

sudo cp qt5.9.1.tar.gz /opt

78a984d53f124b1cb5c558ad251cd8c0.png

24.进入文件夹并解压

cd /opt

tar -zxvf qt5.9.1.tar.gz

ea10892397664e37860e482e91641449.png

25.将qt程序运行所依赖的相关文件、配置等添加到环境变量中,操作如下


      sudo vi /etc/profile


      添加以下内容


export QTEDIR=/opt/qt5.9.0-arm/


export LD_LIBRARY_PATH=/opt/qt5.9.0-arm/lib:$LD_LIBRARY_PATH


export QT_QPA_PLATFORM_PLUGIN_PATH=$QTEDIR/plugins


export QT_QPA_PLATFORM=linuxfb


export QT_QPA_FONTDIR=/usr/share/fonts/truetype/droid


fe3f437855d44ae7ba5ec7f2ab04305c.png

26.保存退出,reboot重启开发板即可

目录
相关文章
|
6月前
|
开发框架 Linux C语言
C、C++、boost、Qt在嵌入式系统开发中的使用
C、C++、boost、Qt在嵌入式系统开发中的使用
191 1
|
4月前
|
Linux iOS开发 开发者
Qt问题(二):无法定位程序输入点于动态链接库
动态链接库(Dynamic Link Library,简称DLL)是一种可执行文件格式,常见于Windows操作系统中,而在Linux和macOS等其他操作系统中,相似的概念通常被称为共享库(Shared Library)。动态链接库允许程序在运行时加载所需的代码和数据,而不是在编译时静态链接到应用程序中。这种方式带来了几个重要的优点:
421 3
|
4月前
|
Oracle 关系型数据库 Linux
讲解linux下的Qt如何编译oracle的驱动库libqsqloci.so
通过这一连串的步骤,可以专业且有效地在Linux下为Qt编译Oracle驱动库 `libqsqloci.so`,使得Qt应用能够通过OCI与Oracle数据库进行交互。这些步骤适用于具备一定Linux和Qt经验的开发者,并且能够为需要使用Qt开发数据库应用的专业人士提供指导。
134 1
讲解linux下的Qt如何编译oracle的驱动库libqsqloci.so
|
3月前
|
API 开发工具 C语言
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
150 0
|
5月前
|
存储 编解码 Ubuntu
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
【QT】linux下alsa库的移植和QT中音视频的处理&笔记
|
4月前
|
机器学习/深度学习 人工智能 计算机视觉
好的资源-----打卡机+Arm+Qt+OpenCV嵌入式项目-基于人脸识别的考勤系统-----B站神经网络与深度学习,商城
好的资源-----打卡机+Arm+Qt+OpenCV嵌入式项目-基于人脸识别的考勤系统-----B站神经网络与深度学习,商城
|
5月前
Cmake构建Qt项目链接glog库
Cmake构建Qt项目链接glog库
|
6月前
|
编解码
qt中使用dll库的方法
qt中使用dll库的方法
86 2
|
6月前
|
存储
Qt更新组件出现(“要继续此操作,至少需要一个有效且已启用的储存库”)
Qt更新组件出现(“要继续此操作,至少需要一个有效且已启用的储存库”)
292 0
Qt更新组件出现(“要继续此操作,至少需要一个有效且已启用的储存库”)
|
6月前
|
编译器
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
177 0

推荐镜像

更多