Qt Creator 启动前需通过 Visual Studio 的 Developer Command Prompt 加载 MSVC 环境变量,否则无法识别编译器;CMakeLists.txt 中须设置 CMAKE_PREFIX_PATH 指向 Qt 套件子目录;Kit 中 CMake 版本应与 MSVC 和 Qt 版本兼容;修改 CMakeLists.txt 后需确保项目以 Open Project 方式加载且未禁用自动配置,必要时清理 build 目录重试。

Qt Creator 启动前必须先加载 MSVC 环境变量
直接双击图标启动 Qt Creator,它大概率会找不到 MSVC 编译器,报错 The C++ compiler is not able to compile a simple test program。这不是 Qt Creator 的 bug,而是它默认不继承系统全局环境变量——尤其缺少 INCLUDE、LIB 和 PATH 这三个关键变量。
最稳妥的做法是:用 Visual Studio 自带的 Developer Command Prompt(比如 “x64 Native Tools Command Prompt for VS 2019”)启动 Qt Creator:
- 在开始菜单里搜到对应命令行工具,右键“以管理员身份运行”
- 输入
qtcreator.exe(确保已加入 PATH)或完整路径,例如:"C:QtToolsQtCreatorinqtcreator.exe" - 这样 Qt Creator 就能拿到所有 MSVC 工具链路径,Kit 配置页里会自动识别出
MSVC 2019 x64编译器和对应 Qt 套件
CMakeLists.txt 里必须显式设置 CMAKE_PREFIX_PATH
即使 Qt Creator 能识别编译器,find_package(Qt5 REQUIRED) 或 find_package(Qt6 REQUIRED) 仍可能失败,提示找不到 Qt 模块。根本原因是 CMake 不知道去哪找 Qt 的 Config.cmake 文件。
解决方法是在 CMakeLists.txt 开头附近加上:
set(CMAKE_PREFIX_PATH "D:/Qt/Qt5.15.2/5.15.2/msvc2019_64")
注意:
CMake 4.3.2 Windows x86_64 历史版本安装包,适合旧项目兼容、构建环境回退、CMakeLists.txt 迁移验证、Visual Studio/Ninja/Makefile 生成器测试和 C/C++ 项目维护。
- 路径必须指向 Qt 安装目录下的具体套件子目录(如
msvc2019_64),不是 Qt 根目录 - Windows 下用正斜杠
/或双反斜杠\,单反斜杠会触发转义问题 - 如果同时用了 Qt5 和 Qt6,优先用
Qt5_DIR或Qt6_DIR变量更精准,但CMAKE_PREFIX_PATH是通用兜底方案
Kit 配置里 CMake 版本不能混用 Qt 自带版和系统版
Qt Creator 安装时通常自带一个 CMake(比如 CMake_64),但它版本可能偏低(如 3.10.x),而 Qt 5.15+ 要求 CMake ≥ 3.14 才支持 file API。若你在“工具→选项→Kits→CMake”里手动指定系统安装的 CMake(如 3.22.0),却没同步更新 Kit 中的编译器和 Qt 版本匹配,就会出现 CMake generator not supported 或解析失败。
建议统一策略:
- 优先使用 Qt 自带 CMake:路径通常是
C:QtToolsCMake_64incmake.exe,版本明确且兼容性有保障 - 若需更高版本 CMake 功能(如
FetchContent更稳定),则必须确认所选 Kit 的编译器(MSVC)、Qt 版本(如 msvc2019_64)、CMake 版本三者全部兼容 - 每次更换 CMake 路径后,点一下 Kit 配置页右下角的
Apply,再重新打开项目触发 CMake 重配置
修改 CMakeLists.txt 后 Qt Creator 不自动重跑 CMake?
默认情况下 Qt Creator 会在保存 CMakeLists.txt 后自动触发 cmake configure,但这个行为依赖两个前提:
- 项目是以 “Open Project” 方式加载的 CMake 项目(即根目录含
CMakeLists.txt),而不是通过 “New Project → CMake Application” 创建后又手动改过结构 - 没有勾选 “Projects → Build & Run → Build Steps → Run CMake” 里的 “Always run CMake before building” —— 这个选项关掉时,仅靠文件保存不会触发,必须手动点左下角的
Run CMake按钮
容易被忽略的是:Qt Creator 的 CMake 缓存(build/ 目录下的 CMakeCache.txt)有时会残留旧配置。一旦遇到奇怪的模块找不到或链接失败,先删掉整个 build/ 目录再重试,比反复调参数更高效。

















