1、下载qt5.12.12
网站:Index of /
https://download.qt.io/
2、解压并配置
./configure -release -opensource -confirm-license -xplatform linux-aarch64-gnu-g++ -prefix ./qt5.12.2 -nomake examples -no-opengl -silent -qpa linuxfb
其中“-xplatform linux-aarch64-gnu-g++”是指定平台,比如笔者这里是arm64 位的,所以选择 “linux-aarch64-gnu-g++”,Qt 源码中提供了一些可选项,展示如下:

配置报错:Could not find qmake spec ''.
是因为源码路径中有中文路径,将其移植全英文路径下。
3、配置编译交叉工具链
vim qtbase/mkspecs/linux-aarch64-gnu-g++/qmake.conf
因为我们需要编译 ARM64 的库,且上面配置的也是 arm64,conf 文件中的配置如下:

下载交叉编译工具链:
$ sudo apt install g++-aarch64-linux-gnu
$ sudo apt install gcc-aarch64-linux-gnu
也可以自己导出交叉编译工具链到对应的终端下。只能2选1。
4、编译并安装
make -j4 && make install
安装到源码目录下的"qt5.12.2"文件夹目录下,这里的安装目录,是由配置中的“-prefix ./qt5.12.2”指定的。
安装后,得到的到如下目录
![]()
验证so库的版本
![]()
有“ELF 64-bit LSB shared object, ARM aarch64”则表示这是 arm 64 ,arm架构的库;也就是说只能在ARM 64 的cpu 上运行。
5、编译简单应用测试
用交叉编译工具链来配置qtcreator的kit即可,相关信息可百度。
该博客参考:交叉编译 Qt5.12.2_elikang的博客-优快云博客_qt 交叉编译
遇到相同的问题未再次记录。
此外,刚开始按照上述博客做了一次,很成功,改为ARM64架构的配置后,怎么也编译不成功。删除源码重新解压后可以。
本文介绍如何下载Qt5.12.12并完成ARM64架构的交叉编译过程,包括配置环境、解决常见错误、安装编译后的库文件及测试简单应用的方法。
906

被折叠的 条评论
为什么被折叠?



