VS2022编译Qt5.12.11后无法配置Qt Creator Kit求助
问题:Qt 5.12.11源码编译(VS2022)后无法在Qt Creator中配置Kit
我在Win10 22H2系统上,从源码构建Qt 5.12.11,目标是用Visual Studio 2022编译后添加到Qt Creator的Kit中(需要切换到VS2022环境)。根据Qt官方文档,该环境是支持的。
操作步骤
- 执行VS2022环境配置脚本:
REM Set up \Microsoft Visual Studio 2022, where <arch> is \c amd64, \c x86, etc. CALL "C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64 SET _ROOT=C:\Qt\Qt5.12.11 SET PATH=%_ROOT%\Tools\QtCreator\bin;%PATH% REM Uncomment the below line when using a git checkout of the source repository REM SET PATH=%_ROOT%\qtrepotools\bin;%PATH% SET _ROOT=
执行后输出:
********************************************************************** ** Visual Studio 2022 Developer Command Prompt v17.11.2 ** Copyright (c) 2022 Microsoft Corporation ********************************************************************** [vcvarsall.bat] Environment initialized for: 'x64'
- 执行configure命令:
configure -nomake examples -nomake tests -skip qtwebengine -opensource -prefix C:\Qt\Qt5.12.11\5.12.11\msvc2022_64
configure输出显示编译器为msvc 194033811(对应VS2022)。
遇到的问题
将编译后的Qt版本添加到Qt Creator后,详情显示异常,无法创建使用VS2022(C++ Compiler 17.7)的Kit,系统报错。已更新VS2022到最新版本,暂无解决思路。
解决思路与步骤
1. 确认Qt Creator版本兼容性
Qt 5.12.11对VS2022的支持需要配套的Qt Creator版本,至少需使用Qt Creator 4.15.2(Qt 5.12系列的最高配套版本),或者直接升级到Qt Creator 6.x系列,这类版本对VS2022的适配更完善。
2. 手动配置编译器、调试器与Kit
放弃Qt Creator的自动检测,手动完成配置:
- 打开
工具 > 选项 > 构建和运行 > 编译器,点击添加 > MSVC,手动定位到VS2022的编译器路径(示例:C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.40.33807\bin\Hostx64\x64\cl.exe),命名为MSVC 2022 64bit。 - 切换到
调试器选项卡,添加Windows调试器,路径指向C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Debuggers\x64\cdb.exe。 - 转到
Qt版本选项卡,确认已添加编译好的Qt 5.12.11,路径指向C:\Qt\Qt5.12.11\5.12.11\msvc2022_64\bin\qmake.exe。 - 创建新Kit:选中上述配置的Qt版本、MSVC 2022编译器和调试器,保存后测试可用性。
3. 验证编译后的Qt完整性
检查编译输出目录的结构:
- 确认
C:\Qt\Qt5.12.11\5.12.11\msvc2022_64下存在bin、lib、include等核心文件夹,且bin目录下有qmake.exe、Qt5Core.dll等文件。 - 打开VS2022开发者命令提示符,进入该
bin目录,执行qmake -v,确认输出的编译器版本与VS2022匹配。
4. 修复Qt Creator环境检测问题
如果Creator无法识别VS环境,尝试:
- 关闭Creator,从VS2022开发者命令提示符中启动
qtcreator.exe,让Creator继承正确的环境变量。 - 删除Creator的配置缓存:找到配置目录(通常为
C:\Users\<你的用户名>\AppData\Roaming\QtProject\qtcreator),删除toolchains、CMakeLists.txt.user等缓存文件,重启后重新配置。
5. 重新编译时指定平台参数
Qt 5.12.11默认可能无法自动识别VS2022,重新编译时在configure命令中显式指定平台:
configure -nomake examples -nomake tests -skip qtwebengine -opensource -prefix C:\Qt\Qt5.12.11\5.12.11\msvc2022_64 -platform win32-msvc2022
确保configure正确识别VS版本后,再执行nmake和nmake install完成编译。
内容的提问来源于stack exchange,提问作者Manuninho
相关产品推荐
相关产品推荐

