关于在VS中使用Qt不同版本报错的问题

最开始需要配置的地方

首先看一下我的Qt有关的环境变量:

Path环境变量里:

这里就是把对应Qt编译器环境下的bin目录放进来:比如你使用的是msvc2017_64或者MinGW

QMAKESPEC环境变量:

这个就选择Qt对应的编译器目录下的**\mkspecs\win32-msvc**

VS for Qt 工具里面的设置:

首先打开扩展 QT VS Tools,如果不会的去找个博客看下怎么安装。

然后设置:

项目属性中的设置:(一般在右边,如果没有可以在《视图》--《其他窗口》--《属性管理器》)

这个是正常的情况下需要配置的地方。


接下来是配置第二种Qt编译环境(QT6)出现的问题:

第一种情况只修改了VS中的对应的情况,

环境变量有Qt6的bin目录

MAKESPEC环境变量没有修改,仍然是QT5的

1、如果我只修改了VS中的设置,包括:Qt VS Tool中的default

2、属性表中的编译器:

会报错:

可能也会报这个错:

当然这个问题的解决方法是在属性页中将C++的版本换成C++17

然后换完以后还会报错:

现在将环境变量MAKESPEC设置一下变成Qt6的

发现仍然报上面的错误:

然后进入到对应的解决方案项目下的的文件夹里,删除两个文件夹(记得要关闭VS哦

然后重新再打开这个解决方案,发现就可以了


总结:

其实这中间,有几次还报Qt --Version的错误,前面没有记录到,还有 --current path 的错误, 还有报这个文件错误的问题:qtvars.pro这个配置文件,

错误 : 项目"G:\SoftWare\VSCode\TestQQSocket\TestQQSocket.vcxproj"配置"Debug|x64"的 Designtime 生成失败。IntelliSense 可能不可用。
设置环境变量 TRACEDESIGNTIME = true 并重启 Visual Studio 以进行调查。

都是这几步的问题,前面设置好了,最后记得删除一下.vs和x64文件夹。

切换使用的Qt环境的时候 记得修改一下对应的环境变量和属性管理器就可以了。


希望能够帮到你!

相关推荐
yqcoder几秒前
突破性能瓶颈:深入理解 JavaScript TypedArray
java·开发语言·javascript
yqcoder2 分钟前
JS 中的“空”之双雄:null vs undefined
开发语言·前端·javascript
ch.ju2 分钟前
Java Programming Chapter 3——Traversal of array
java·开发语言
计算机安禾4 分钟前
【c++面向对象编程】第8篇:const成员与mutable:常对象与常函数
开发语言·javascript·c++
RPGMZ2 小时前
RPGMZ游戏引擎 一个窗口 文本居中显示
开发语言·javascript·游戏引擎·rpgmz
代钦塔拉10 小时前
Qt4 vs Qt5 带参数信号槽的连接方式详解
开发语言·数据库·qt
InfinteJustice12 小时前
踩坑分享C 语言文件操作全攻略:从基础读写到随机访问与缓冲区原理
c语言·开发语言·microsoft
码云数智-大飞12 小时前
滥用Lombok的@EqualsAndHashCode导致线上事故复盘
开发语言
yong999012 小时前
C# 实时查看硬件使用率(CPU 内存 硬盘 网络)
开发语言·网络·c#
不午休の野猫12 小时前
vs + qt环境编译.sln项目时报无法解析的外部符号metaObject && qt_metacast
开发语言·qt