如何配置MSVC2017与Qt Creator 4.5.2正常协同工作?
我太懂这种折腾半天却卡壳的滋味了——明明按流程装好了VS 2017和带MSVC插件的Qt Creator,结果套件能识别但编译器找不到,手动加了cl.exe还编译失败,重装Qt也没用,属实闹心。针对你的情况,试试下面这些针对性的排查和解决方法:
先确认VS 2017的组件是否装全
很多时候问题根源在VS的组件不全。打开VS Installer选择「修改」,一定要勾选**「Desktop development with C++」**这个工作负载,展开它的子选项后,确认勾选了「MSVC v141 - VS 2017 C++ x64/x86 build tools」(对应你Qt套件的架构),还有匹配的「Windows 10 SDK」(比如10.0.17763.0这类常用版本)。修改完成后重启电脑,再打开Qt Creator看看套件状态。别手动加编译器,让Qt Creator自动扫描
手动添加cl.exe很容易因为缺少完整的环境变量导致编译失败。打开Qt Creator,依次点「工具 > 选项 > 构建和运行 > 编译器」,点击右上角的「添加」选择「Microsoft Visual C++」,让Qt Creator自动扫描系统里的MSVC编译器。如果扫描不到,先验证VS的环境是否正常:打开VS 2017的**「x64 Native Tools Command Prompt for VS 2017」**(对应你的架构),输入cl,如果能正常显示版本信息,说明环境没问题;如果不行,那得先修复VS的安装。重置Qt Creator的配置缓存
有时候Qt Creator的配置缓存会出问题,导致识别异常。关闭Qt Creator,找到它的配置文件夹:Windows下一般是C:\Users\<你的用户名>\AppData\Roaming\QtProject\qtcreator,把这个文件夹重命名(比如改成qtcreator_old),然后重新启动Qt Creator,它会重新生成配置并自动检测VS和编译器。这一步我帮朋友解决过好多次类似的套件识别问题。检查Qt版本和MSVC2017的兼容性
确认你安装的Qt版本支持MSVC2017——比如Qt 5.9及以上版本才全面适配MSVC2017。如果你的Qt版本太老,就算装了插件也可能不兼容,这种情况下得升级Qt到对应版本。迫不得已时手动配置环境变量
如果自动检测还是不行,就给套件手动配置环境变量:打开「工具 > 选项 > 构建和运行 > 套件」,选中你的MSVC2017套件,切换到「环境」标签,先点「重置」试试;如果还是不行,就打开VS的命令提示符输入set,把所有和MSVC、SDK相关的环境变量复制出来,粘贴到Qt Creator的环境变量列表里。
按照上面的步骤一步步排查,大概率能解决你的问题。
内容的提问来源于stack exchange,提问作者Santi Peñate-Vera

