Win7下 qt + vs2017 使用 vs2015编译报错
'type_traits': No such file or directory
- “cl”不是内部或外部命令,也不是可运行的程序或批处理文件
问题原因: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
中有两行检查命令, 检查命令失败导致 , qt编译时调用此批处理初始化vc环境时失败, 进而报错, 可以参考一下链接修改 vcvarsall.bat
参考: https://blog.youkuaiyun.com/weixin_33890526/article/details/85856500
即, 注释一下两行
REM if exist "%~dp0..\common7\IDE\devenv.exe" goto setup_VS
REM if not exist "%~dp0..\common7\IDE\wdexpress.exe" goto setup_buildsku
注意环境变量中的 VCTargetPath
一般情况下是不需要设置, 如果之前安装过nodejs个别模块,编译时需要添加 VCTargePath
环境变量, 在升级到 VS2017或VS2019之后 必须删除 VCTargePath
否则会导致 VS2017或VS2019编译VC项目出现问题
另外, 需要确认已经添加系统环境变量VS140COMNTOOLS
(对应VS2015)是否正确, ( VS2013对应VS130COMNTOOLS
)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
如果以上解决方案,尝试过后, 还不可以, 需要确认 Windows SDK 是否按照 , 是否添加至系统环境变量(Path
)
例如(x86):
- Windows SDK 8.1
C:\Program Files (x86)\Windows Kits\8.1\bin\x86;
- Windows SDK 10 xxxx.xxxx
C:\Program Files (x86)\Windows Kits\xxxx.xxxx\bin\x86;