多Qt版本冲突导致编译异常的解决方法


在VS2015+Qt5.8.0(或VS2013+Qt5.6.2等等)中新建Qt Application项目,没有任何改动,编译依然报错如下:

error MSB6006: “cmd.exe”已退出,代码为 9009
解决方法如下:

1.检查Qt安装目录是否添加到环境变量:
VS2013+Qt5.6.2配置
VS2015+Qt5.8.0配置

2.在确定路径无中文、环境变量已添加了以后如果依然报错,那么很可能就是同时安装了多个Qt版本导致的冲突,此时不需要卸载多个Qt,只要禁用qt-addin-vs插件就可以了, 比如电脑中有VS2013+Qt5.6.2,同时还有VS2015+Qt5.8.0,就会导致冲突,解决方法如下:
如果使用的是VS2013+Qt5.6.2: 点击 VS上方菜单栏中看到的QT5选项 ->Qt Options:确保Qt版本及安装路径是Qt5.6.2,然后环境变量要把Qt5.6.2的安装路径发到Qt5.8.0安装路径之前即可
如果使用的是VS2015+Qt5.8.0:点击VS上方菜单栏中看到的Qt VS Tools选项->Qt Options:确保Qt版本及安装路径是Qt5.8.0,然后环境变量要把Qt5.8.0的安装路径发到Qt5.6.2安装路径之前即可
以上操作可以实现Qt工程的切换,但是略麻烦,因此建议Qt尽量不要装多个版本,官方给的addin程序,VS2015貌似只支持5.8.0及其以上版本,因此建议统一改成5.8.0版本,不给自己找麻烦...

你可能感兴趣的:(QT,C++,C++,QT,VS)