VS2022+Qt的环境配置

本文档介绍了如何在Visual Studio 2022下配置Qt开发环境,包括下载Qt开源版,利用国内镜像加速,安装过程及注意事项,旨在帮助开发者快速设置好开发环境。

前言

因为一些原因,再次接触到了Qt,Qt原生的IDE又太过憨批,这里就搭配宇宙第一IDE VS2022配置一下Qt,在这里写一期配置,希望对大家有点帮助。

说起来,这玩意是叫Qt,不是QT,更不是qt!

前置环境

我的环境是Windows 10,默认已经安装了visual studio 2022,如果没有安装VS2022直接进官网下载安装就完事了,无脑点点点,很简单。最后需要确保你安装了左边的C++桌面开发以及右边MSVC v142(VS2019的生成工具)
在这里插入图片描述

安装Qt

进入Qt官网
进入下载页面 (2024年2月5日11:41:05更新:新版本Qt这个界面变化了,不过后面的还是一样的)
在这里插入图片描述
这里我们本着支持开源精神 qiong选择开源版

拉下来,选择下载
在这里插入图片描述
点进去,点击download
在这里插入图片描述
然后应该会自动弹出下载
在这里插入图片描述
由于官方源因为众所周知的原因贼慢,我们这里使用国内镜像
下载后找到这个exe所在目录
在这里插入图片描述
如果你有windows terminal的话直接在该文件夹的空白处右键终端打开
在这里插入图片描述
没有的话自己开一个powershell或者cmd打开这个目录就行了
输入命令:

# installer(.exe) --mirror https://mirrors.bfsu.edu.cn/qt
installer(.exe) --mirror https://mirrors.aliyun.com/qt

注意:这个installer(.exe)是你下的这个exe的名字,比如我这里叫qt-unified-windows-x86-4.3.0-1-online.exe,那我就输入.\qt-unified-windows-x86-4.3.0-1-online.exe --mirror https://mirrors.bfsu.edu.cn/qt,为什么要加个.\呢?相信这点也不用我解释了。(2024年2月26日15:26:56更新:之前用的北外的源,现在好像挂了,换成了阿里云的)
在这里插入图片描述

登录Qt账户,没有的自己注册一个,怎么注册都不会就洗洗睡吧
在这里插入图片描述
注册密码是大小写+数字
在这里插入图片描述开源协议,同意一下
在这里插入图片描述
一路下一步,是否接受改进协议,爱选啥选啥
在这里插入图片描述
指定安装路径,C盘小的小朋友酌情改改路径吧,这玩意还是能占几十个g的
在这里插入图片描述
选择版本,这里我选6.3.0,如果你要选择历史版本,点右边的archive然后筛选即可
在这里插入图片描述
一大堆许可协议,选择经典“我已阅读”
在这里插入图片描述
一路下一步,等待下载安装,这个是我换源前的下载速度,这个数字动的倒是挺快,仔细一看,单位字节(
在这里插入图片描述
下载完后安装也要老半天,经过相当漫长的等待,终于全部搞定了。
在这里插入图片描述

<think>我们正在处理一个关于在Visual Studio 2022中配置Qt项目并使用CMake进行构建的问题。根据提供的引用,我们可以总结出以下步骤: 1. 确保已安装必要的软件:Visual Studio 2022(包括C++开发环境和CMake工具)、Qt(对应VS版本的Qt,例如msvc2019_64或msvc2022_64)以及CMake。 2. 在CMakeLists.txt中配置Qt路径和项目设置。 3. 使用CMake生成项目并构建。 具体步骤: ### 步骤1:安装软件 - 安装Visual Studio 2022,并确保勾选“使用C++的桌面开发”和“用于Windows的C++ CMake工具”。 - 下载并安装Qt(建议使用在线安装程序),选择与Visual Studio 2022兼容的版本(如Qt 5.15.2或Qt 6.x的msvc2019_64或msvc2022_64)。注意,Visual Studio 2022对应的编译器是msvc2022,但Qt可能还没有专门的msvc2022包,通常可以使用msvc2019_64(因为VS2019和VS2022的ABI兼容)[^2]。不过,如果Qt提供了msvc2022_64的包,则优先选择。 ### 步骤2:创建项目并配置CMakeLists.txt 在Visual Studio 2022中创建一个新的CMake项目(选择“CMake项目”模板),然后编辑CMakeLists.txt文件。 以下是一个基本的CMakeLists.txt配置示例(参考引用[1][2][3]): ```cmake cmake_minimum_required(VERSION 3.10) # 或者更高版本,如3.12, 3.15等 project(MyQtProject) # 项目名称 # 设置C++标准 set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # 设置自动处理Qt的元对象编译器(moc)、资源编译器(rcc)和用户界面编译器(uic) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_AUTOUIC ON) # 设置Qt的安装路径(注意:这里设置的是Qt的安装目录下的对应版本目录,例如:D:/Qt/6.2.4/msvc2019_64) # 注意:如果系统环境变量中已经设置了Qt的路径,也可以不在这里设置,但显式设置更可靠。 set(CMAKE_PREFIX_PATH "D:/Qt/6.2.4/msvc2019_64") # 请替换为你的Qt安装路径 # 查找Qt库 find_package(Qt6 COMPONENTS Core Widgets Gui REQUIRED) # 使用Qt6,如果使用Qt5则改为Qt5 # 添加可执行文件 add_executable(${PROJECT_NAME} main.cpp # 其他源文件和头文件 ) # 链接Qt库 target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core Qt6::Gui Qt6::Widgets # 其他需要的Qt模块 ) ``` ### 步骤3:配置和构建 1. 在Visual Studio中打开项目文件夹(包含CMakeLists.txt的文件夹)。 2. Visual Studio会自动检测CMakeLists.txt并开始配置(如果配置失败,可以手动触发重新配置)。 3. 选择构建目标(例如x64-Debug或x64-Release)。 4. 构建并运行。 ### 可能遇到的问题及解决方案(参考引用[2][4]) - **问题1:CMake无法找到Qt** - 确保`CMAKE_PREFIX_PATH`设置正确,指向Qt安装目录下的对应编译器版本目录(例如:`D:/Qt/6.2.4/msvc2019_64`)。 - 如果使用Qt5,则`find_package`中应写`Qt5`。 - **问题2:CMake配置失败,提示找不到Qt组件** - 检查`find_package`中是否列出了所有需要的组件(如Core, Gui, Widgets等)。 - 确保安装的Qt版本包含了这些组件。 - **问题3:构建时出现与UI文件相关的错误** - 确保设置了`CMAKE_AUTOUIC ON`,这样CMake会自动处理.ui文件。 - 如果使用了资源文件(.qrc),确保设置了`CMAKE_AUTORCC ON`。 - **问题4:Visual Studio的CMake配置管理问题** - 如果遇到CMake配置管理问题(如存在多个配置文件),可以尝试删除项目目录下的`CMakePresets.json`和`CMakeUserPresets.json`(如果有),然后重新配置[^4]。 ### 示例项目结构 假设项目结构如下: ``` MyQtProject/ CMakeLists.txt main.cpp MyWidget.h MyWidget.cpp MyWidget.ui (可选) resources.qrc (可选) ``` 在`main.cpp`中,可以编写一个简单的Qt程序: ```cpp #include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QPushButton button("Hello, Qt with CMake in VS2022!"); button.show(); return app.exec(); } ``` ### 注意事项 - 如果同时使用了其他库(如libtorch),则需要在`CMAKE_PREFIX_PATH`中添加多个路径(用分号分隔)[^3]。 - 确保在链接库时,所有需要的Qt模块都已链接。 通过以上步骤,应该可以在Visual Studio 2022中成功配置并构建Qt项目。 §§相关问题§§ 1. 如何在CMake中配置多个Qt模块? 2. 如何解决Visual Studio中CMake项目配置Qt时出现的“找不到Qt”错误? 3. 如何在Qt项目中添加资源文件(.qrc)并在CMake中处理?</think>### 在Visual Studio 2022中配置QT项目(CMake方案) #### **步骤1:环境准备** 1. 安装必备组件: - Visual Studio 2022(勾选 **"使用C++的桌面开发"** 和 **"用于Windows的C++ CMake工具"**) - [Qt安装程序](https://www.qt.io/download)(选择与VS兼容的版本,如 **Qt 5.15.2+** 或 **Qt 6.x**,需包含 **msvc2019/msvc2022** 组件) - CMake 3.10+(通常VS已内置) #### **步骤2:创建CMake项目** 1. 在VS 2022中: - 文件 → 新建 → 项目 → 选择 **"CMake项目** - 设置项目名称(如 `QtDemo`) #### **步骤3:配置CMakeLists.txt** ```cmake cmake_minimum_required(VERSION 3.10) project(QtDemo) # 设置C++标准 set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # 启用Qt自动处理(关键!) set(CMAKE_AUTOMOC ON) # 元对象编译器 set(CMAKE_AUTORCC ON) # 资源编译器 set(CMAKE_AUTOUIC ON) # UI编译器 # 指定Qt安装路径(替换为你的实际路径) set(CMAKE_PREFIX_PATH "D:/Qt/6.5.2/msvc2019_64") # 示例路径[^1][^2] # 查找Qt库 find_package(Qt6 COMPONENTS Core Widgets Gui REQUIRED) # Qt6写法 # find_package(Qt5 COMPONENTS Core Widgets REQUIRED) # Qt5写法 # 添加可执行文件 add_executable(${PROJECT_NAME} main.cpp MainWindow.cpp MainWindow.h MainWindow.ui # 如果有UI文件 ) # 链接Qt库 target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core Qt6::Widgets Qt6::Gui ) ``` #### **步骤4:添加示例代码** 1. **main.cpp** 示例: ```cpp #include <QApplication> #include "MainWindow.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); MainWindow window; window.show(); return app.exec(); } ``` 2. **MainWindow.h** 示例: ```cpp #include <QMainWindow> #include <QPushButton> class MainWindow : public QMainWindow { Q_OBJECT // 必须包含 public: MainWindow(QWidget *parent = nullptr); }; ``` #### **步骤5:构建与调试** 1. 在VS顶部工具栏: - 选择 **"x64-Debug"** 或 **"x64-Release"** - 点击 **"生成" > "全部生成"** 2. 调试: - 按 **F5** 启动调试 - 若遇UI文件未编译,检查 `CMAKE_AUTOUIC` 是否设为 `ON`[^3] #### **常见问题解决** 1. **Qt路径错误**: - 确认 `CMAKE_PREFIX_PATH` 指向Qt的 **msvc2019_64** 或 **msvc2022_64** 目录 - 路径格式:`set(CMAKE_PREFIX_PATH "D:/Qt/6.5.2/msvc2019_64")` 2. **缺少组件**: ```cmake find_package(Qt6 COMPONENTS Core Widgets Gui Network Sql REQUIRED) ``` 3. **CMake缓存问题**: - 删除项目目录下的 `build` 或 `out` 文件夹重新生成 - 或通过 **"项目" > "删除缓存并重新配置"**[^4] 4. **UI文件未更新**: - 确保 `.ui` 文件在 `add_executable` 中声明 - 检查 `MainWindow.h` 是否包含 `Q_OBJECT` 宏 > 关键配置总结: > - **`CMAKE_PREFIX_PATH`** 指向Qt编译器目录 > - **`find_package`** 声明所需Qt组件 > - **`AUTOMOC/AUTOUIC/AUTORCC`** 必须设为 `ON` > - 头文件必须包含 **`Q_OBJECT`** 宏[^1][^2][^3] --- ### **相关问题**
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值