添加编译器
您可以在多种 32 位和 64 位平台上开发 Qt 应用程序。通常,您可以使用 GCC、供应商提供的编译器或第三方编译器在各个平台上构建 Qt 应用程序。 在Qt Creator 中,套件指定了用于在特定平台上构建和运行应用程序所需的编译器及其他必要工具。
Qt Creator 会自动检测您的系统或 Qt Online Installer 注册的编译器,并将其列在“Preferences ” > “Kits ” > “Compilers ”中。

要刷新自动检测到的编译器列表,请选择“Re-detect ”。
注意:在 macOS上 ,只有当您使用 Homebrew 或 MacPorts 安装时,ccache 的 C/C++ 编译器缓存才会被自动检测到。使用 MacPorts 时,您还需要按照 MacPorts wiki中“如何启用 ccache”中的说明创建符号链接。
重新检测编译器
当Qt Creator 检测到 x86_64 GCC 编译器时,会为原生 x86_64 目标设置一个实例。如果您计划在不使用专用交叉编译器的情况下也创建 32 位 x86 二进制文件,请选择“Auto-detection Settings ”>“Detect x86_64 GCC compilers as x86_64 and x86 ”。然后选择“Re-detect ”以刷新自动检测到的编译器列表。
要删除手动添加的编译器,请选择“Remove ”或“Remove All ”。
添加 C 或 C++ 编译器
要添加 C 或 C++ 编译器:
- 选择“Preferences ” > “Kits ” > “Compilers ”。
- 选择“Add ”以添加新编译器,或选择“Clone ”以添加所选编译器的其他版本。
- 从列表中选择一个编译器。
- 根据所选编译器设置编译器首选项。
支持的编译器
您可以添加以下编译器,以便使用其他编译器或自动检测到的编译器的其他版本来构建应用程序。
| 编译器 | 描述 |
|---|---|
| Clang | 适用于 Windows、Linux 和 macOS 平台的 LLVM 编译器的 C、C++、Objective C 和 Objective C++ 前端。 |
| clang-cl | Clang 的另一种命令行接口,与 Visual C++ 编译器(cl.exe )兼容。 |
| GCC(GNU 编译器集合) | 适用于 Linux 和 macOS 的编译器。 |
| ICC(英特尔 C++ 编译器) | 一组 C 和 C++ 编译器。目前Qt Creator 仅支持适用于 Linux 和 macOS 的 GCC 兼容版本。 |
| MinGW(适用于 Windows 的精简版 GNU) | GCC 和 GNU Binutils 的原生软件移植版本,用于在 Windows 上开发原生 Microsoft Windows 应用程序。MinGW 与Qt Creator 及 Qt for Windows 捆绑分发。 |
| MSVC(Microsoft Visual C++ 编译器) | 随 Microsoft Visual Studio 一起安装的 C++ 编译器。 |
| Nim | 适用于 Windows、Linux 和 macOS 的 Nim 编译器。 |
| QCC | 用于为 QNX 编译 C++ 应用程序的接口。 |
| 自定义 | 除所列编译器和远程编译器以外的其他选项。 |
emscripten 编译器是用于编译为WebAssembly 的工具链。
裸机编译器
此外,Qt Creator Bare Metal 设备插件还支持以下编译器。
| 编译器 | 描述 |
|---|---|
| IAR EW | 来自各种 IAR Embedded Workbench 开发环境的一组 C 和 C++ 裸机编译器。目前支持的架构包括8051 、AVR 、Arm™ 、STM8 和MSP430 。 |
| Keil | 来自各种Keil开发环境的一组C和C++裸机编译器。目前支持的架构包括8051 和Arm 。 |
| SDCC | 一款适用于多种架构的优化型 C 裸机编译器。目前支持的架构包括8051 和STM8 。 |
排查 MinGW 编译错误
如果“编译输出”中显示的错误消息包含缺少斜杠的路径(例如,C:QtSDK ),请检查您的 PATH 变量。在命令行中,输入以下命令:
where sh.exe where make.exe where mingw32-make.exe
如果这些命令显示了路径,则说明在安装基于 Cygwin 或 MinGW 的工具链时,这些路径已被添加到全局 PATH 变量中,尽管这违反了 Windows 的惯例。
为了继续使用该第三方工具链,请创建一个新的 shell 链接,其中包含所需的路径(如同 Visual Studio 和 Qt XML 所做的那样)。该 shell 链接必须指向cmd.exe :
C:\Windows\System32\cmd.exe /K C:\path_to\myenv.bat
其中 /K 参数用于执行 bat 文件中指定的命令。
在path_to 位置创建myenv.bat 文件,该位置应便于访问。在文件中,指定工具链的路径。例如:
set PATH=C:\path1;C:\path2;%PATH%
其中path1和path2分别是工具链的路径。
最后,从全局 PATH 中移除这些路径,重启计算机,并再次运行where 命令以验证全局 PATH 是否已清理干净。
您可以使用 shell 链接来运行第三方工具链中的工具。
另请参阅 《操作指南:管理套件》、《管理套件》、《为Bare Metal 设备开发》以及《支持的平台》。
Copyright © The Qt Company Ltd. and other contributors. 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.