1.操作系统 ubuntu1~20.04
2. qt5.9.9 Index of /archive/qt/5.9/5.9.9
下载qt源码(qt-everywhere-opensource-src-5.9.9.tar.xz)和程序(qt-opensource-linux-x64-5.9.9.run)
3.下载arm交叉编译工具链
下载首页:Builds & Downloads - Linaro
4.安装python
5.安装perl
6.安装gcc ubuntu默认应该有,没有就安装
sudo apt-get install build-essential
7.安装g++
sudo apt-get install g++
8.下载交叉编译工具链,添加环境变量
sudo vim ~/.bashrc
export PATH=/opt/gcc-arm-linux/bin$PATH
source ~/.bashrc
查看效果:
echo $PATH
在任意地方执行:
arm-linux-gnueabihf-g++ -v
表示已设置成功
10.Linux下载完qt源码或arm工具链压缩文件,先sudo chmod 777 文件名
解压完后sudo chmod -R 777 文件夹名
这样赋予最大权限
11.开始编译
切换到qt源码根目录
1.配置:
./configure -release -opensource -prefix /opt/qt-arm -nomake tests -nomake examples -no-opengl -skip qtvirtualkeyboard -xplatform linux-arm-gnueabi-g++
2.make
整个make 要2个小时
可以先部分编译一些可能会出错的
make module-qt3d
make module-qtquickcontrols
make module-qtserialbus
会遇到:error: ‘SIOCGSTAMP’ undeclared (first use in this function); did you mean ‘SIOCGARP’?
找到socketcanbackend.cpp并打开,添加头文件#include <linux/sockios.h>即可解决问题
编译结束没有error提示就说明成功了
3,make install
12 配置qtcreator
安装qt-opensource-linux-x64-5.9.9.run
1.编译器
Add -> GCC - C
Add -> GCC - C++
2.qt version 选在配置配置时的 /opt/qt-arm 中的qmake
3.添加kit
4.运行