Qt for Android - 从源代码构建
本页面介绍了配置和构建Qt for Android 的过程。若要下载并安装预编译的 Qt for Android,请按照“Qt 入门”页面上的说明进行操作。
先决条件
若要从源代码构建 Qt for Android,请确保满足“Qt for Android 先决条件”中列出的所有要求后再继续。
Windows
在 Windows 上构建 Qt for Android 还需以下软件:
- Mingw-w64 13.1 工具链
注意:Qt for Android 不支持使用 Microsoft Visual C++ (MSVC) 从源代码进行构建。
安装先决条件,并将相应的二进制路径添加到系统PATH 中:
set MINGW_ROOT=<MINGW_ROOT_PATH>\bin
set PATH=%MINGW_ROOT%;%PATH%要验证安装是否成功,请运行:
where mingw32-make.exe该命令应首先在<MINGW_ROOT>路径下列出 mingw32-make.exe。
获取源代码
您可以从Qt 下载页面下载 Qt 源代码,或按照维基指南《获取源代码》进行操作。
配置
在 Qt 6 中,您可以使用 `CMake` 从源代码构建适用于 Android 的 Qt。适用于 Android 的 Qt 6 需要一个主机 Qt 构建,这意味着要构建适用于 Android 的 Qt,您需要先构建用于作为主机的桌面平台(即 Linux、macOS 或 Windows)上的 Qt。 详情请参阅《Qt 的交叉编译》。
要配置 Qt for Android,请创建一个影子构建目录以保持源代码目录的整洁:
mkdir -p ~/dev/build-qt-android
cd ~/dev/build-qt-androidQt for Android 支持以下设备架构(ABI):arm64-v8a 、x86_64 、x86 ,以及armeabi-v7a
然后在刚刚创建的构建目录中运行 configure 脚本:
<qt5_super_repo_path>/configure -prefix <install_path> -qt-host-path <qt_host_path> \
-android-abis <abi> -android-sdk ~/Android/Sdk -android-ndk ~/Android/Sdk/ndk/27.2.12479018Android SDK 通常由Qt Creator 或 Android Studio 安装在以下位置:
- Linux:
~/Android/Sdk/ - macOS:
~/Library/Android/sdk/ - Windows:
C:\Users\<USER>\AppData\Local\Android\Sdk\
注意: 如果系统中存在ninja 可执行文件,configure 始终会使用Ninja生成器和构建工具。Ninja 具有跨平台、功能丰富、性能优异等特点,因此推荐在所有平台上使用。虽然使用其他生成器可能也能正常工作,但并不受官方支持。
高级配置参数
在阅读本节内容之前,请参阅《Qt Configure 选项》,其中包含有关 configure 选项的更多信息。
Android 版 Qt 包含使用javac编译器编译成*.jar文件的 Java 代码。要为源代码和目标设置javac版本,请分别使用-android-javac-source和-android-javac-target:
-android-javac-source 17 -android-javac-target 17若要构建开发者版本的 Qt(而非前缀版本),请使用以下选项代替 `-prefix ` 参数:
-developer-build在主机开发者构建中,-qt-host-path 应指向主机构建目录中的qtbase 目录。例如:~/dev/build-qt-host/qtbase 。
构建
要构建 Qt,请运行以下命令:
cmake --build . --parallel安装
对于前缀构建,要安装 Qt,请运行以下命令:
cmake --install .在 Unix 系统上,如果您未提供-prefix <install_path> 配置选项,则安装目录位于/usr/local/Qt-<version> 之下;在这种情况下,您需要在安装命令中使用sudo 。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.