在linux上使用qt编译基于arm64的程序

首先安装linux版的qt,选择你想用的qt源码版本,我这里用的是5.9.9的版本

不想用qt软件的  这里提供几个网站

官网 http://download.qt.io/official_releases/qt
https://download.qt.io/archive/qt/

中国科学技术大学:http://mirrors.ustc.edu.cn/qtproject/
清华大学:https://mirrors.tuna.tsinghua.edu.cn/qt/
北京理工大学:http://mirror.bit.edu.cn/qtproject/
中国互联网络信息中心:https://mirrors.cnnic.cn/qt/

在网站上下载的源码需要解压

然后安装交叉编译工具链

$ sudo apt-get install gcc-arm-linux-gnueabihf
$ sudo apt-get install g++-arm-linux-gnueabihf
$ sudo apt install gcc-aarch64-linux-gnu
$ sudo apt install g++-aarch64-linux-gnu

查看是否安装成功

$ arm-linux-gnueabihf-gcc -v
$ arm-linux-gnueabihf-g++ -v
$ aarch64-linux-gnu-gcc -v
$ aarch64-linux-gnu-g++ -v

为了不污染源码新建一个文件夹 我建在和源码同级目录下 我这里的文件夹名是5.9.9-arm64-build

cd 5.9.9-arm64-build

sudo  ../5.9.9/Src/configure -prefix $PWD/qtbase -opensource -xplatform linux-aarch64-gnu-g++ -no-opengl -nomake examples

sudo make

sudo make install

在make时我遇到了一些问题

1.error: ‘SIOCGSTAMP’ undeclared (first use in this function); did you mean ‘SIOCGARP’?

解决:找到socketcanbackend.cpp并打开,添加头文件#include <linux/sockios.h>即可解决问题

2.python: not found  

sudo ln -s /usr/bin/python3 /usr/bin/python

无法打开qt

1.qtcreator中没有c++编译器,需要使用命令:

sudo apt install build-essential    

qt报错You don t seem to have make or gmake in your PATH Cannot proceed 也可以用上面这个命令

2.qt creator无法启动,无法加载xcb插件.

sudo apt install libxcb-xinerama0

3.qt creator编译时报错:cannot find -IGL.

使用命令:sudo apt install libgl1-mesa-dev

 

执行完sudo apt install build-essential 后qt中就配置好了aarch64的编译器

设置一下qt versions

新建一个,我的路径在Qt/5.9.9-arm64-build/qtbase/qmake/qmake

新建一个kits,device 选择Generic linux Device

c和c++选择arm 64 bit in usr/bin

qt version 选择刚刚配置好的qt version

新建一个项目进行测试,在ktis选项中选择刚刚新建的kits

就可以进行arm64的编译了

posted @ 2021-07-12 15:35  还有这事  阅读(3109)  评论(0编辑  收藏  举报