当前位置: 首页 > news >正文

从 0 到跑通的 Qt + OpenGL + VS 项目的完整流程

🧩 全流程目标:

在 Visual Studio 中成功打开、编译并运行一个 Qt + OpenGL 项目(.vcxproj 格式)


✅ 第 1 步:安装必要环境

工具说明
Visual Studio 2017 / 2019 / 2022必须勾选 “使用 C++ 的桌面开发” 和 “MSVC 工具集”
Qt(对应 MSVC 版本)如 Qt 5.12.0 + MSVC2017_64
CMake(如果项目基于 CMake)可选,很多 .vcxproj 项目不需要
GLEW / GLFW / OpenGL可通过 vcpkg 或手动集成

✅ 推荐你安装:Qt 5.12.0 MSVC2017_64
Qt 安装路径一般为:E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\


✅ 第 2 步:准备你的 .vcxproj 项目

你应该已经有这些文件之一:

  • SpongeBob.vcxproj

  • .h, .cpp, .ui

  • 项目文件夹结构:

SpongeBob\
├── SpongeBob.vcxproj
├── myglwidget.cpp / .h
├── main.cpp
├── *.ui
├── shaders / images / textures(资源)

✅ 第 3 步:在 VS 中配置 Qt + OpenGL 环境

🔧 配置 Qt 的包含路径和库路径

✅ 包含目录(C++头文件)
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\include
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\include\QtWidgets
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\include\QtGui
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\include\QtCore
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\include\QtOpenGL
✅ 库目录(.lib文件)
E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\lib

✅ 第 4 步:设置链接器依赖项

🧱 Debug 模式下添加这些 .lib

Qt5Cored.lib
Qt5Guid.lib
Qt5Widgetsd.lib
Qt5OpenGLd.lib
opengl32.lib
glu32.lib
glew32s.lib   (或 glew32.lib)
glfw3_mt.lib  (或 glfw3dll.lib)

🧱 平台插件需要:

确保你的运行目录有:

platforms/qwindowsd.dll

✅ 第 5 步:设置运行目录

在 VS 中设置:

配置属性 → 调试 → 工作目录

设置为:

$(OutDir)

或你的资源路径目录。


✅ 第 6 步:添加 Qt 的 MOC 和 UIC 支持(如果使用 .ui 或 Q_OBJECT)

如果你用了 Qt 的信号槽、Q_OBJECT.ui 文件,需要让 VS 支持 Qt 的编译工具:

方法一:使用 Qt VS Tools 插件(官方)

安装后右键项目 → Qt Project Settings:

  • 配置 Qt 安装路径

  • 它会自动生成 MOC/UIC/资源文件


✅ 第 7 步:编译运行!

Debug 模式下运行:

  • 会生成 SpongeBob.exex64\Debug\

  • 确保该目录下有 Qt 所需 DLL 和平台插件


✅ 第 8 步:部署运行环境(拷贝 DLL)

可使用 windeployqt 自动打包运行依赖:

E:\Qt\Qt5.12.0\5.12.0\msvc2017_64\bin\windeployqt.exe E:\SpongeBob\x64\Debug\SpongeBob.exe

✅ 参考文件结构(运行时):

x64\Debug\
├── SpongeBob.exe
├── Qt5Cored.dll
├── Qt5Guid.dll
├── Qt5Widgetsd.dll
├── Qt5OpenGLd.dll
├── glew32.dll(如果用动态库)
├── glfw3.dll(如果用动态库)
└── platforms\
    └── qwindowsd.dll

🎁 Bonus:自动部署 .bat 文件(可选)

@echo off
set QT_DIR=E:\Qt\Qt5.12.0\5.12.0\msvc2017_64

REM 配置 VS 环境
call "D:\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"

REM 运行 windeployqt
%QT_DIR%\bin\windeployqt.exe E:\SpongeBob\x64\Debug\SpongeBob.exe

pause

🧠 小结:跑通 .vcxproj 的关键点

项目要点
编译包含目录 + 链接 .lib
运行拷贝 Qt DLL + GLEW/GLFW
GUIplatforms/qwindows[d].dll 必须有
调试启用符号(.pdb),避免混用 Debug/Release
信号槽使用 Qt VS Tools 或手动 MOC

相关文章:

  • 算法刷题记录——LeetCode篇(1.5) [第41~50题](持续更新)
  • Neo4j【环境部署 03】插件APOC和ALGO配置使用实例分享(网盘分享3.5.5兼容版本插件)
  • 【Windows】win10系统安装.NET Framework 3.5(包括.NET 2.0和3.0)失败 错误代码:0×80240438
  • 【最新】探索CFD的未来:从OpenFOAM到深度学习,全面解析计算流体力学的顶级资源与前沿技术
  • c++并发编程阅读笔记
  • Oracle logminer详解
  • 鸿蒙NEXT开发日志工具类(ArkTs)
  • 全新UI好看404页面源码
  • Unity的UI适配
  • Qt常用宏定义判断大全
  • 从纸质到 AI 时代:我的笔记工具探索之旅
  • Z-Wave与Matter的协同应用:构建无缝互联的智能家居
  • 2025年华为HCIP题库分享
  • PyTorch + torchvision是什么
  • 《深度学习》——bert框架
  • Axure项目实战:智慧运输平台后台管理端-承运商管理(中继器筛选)
  • 设计模式扩展 MyBatis Plus BaseMapper接口
  • java学习笔记10——集合框架
  • 蚂蚁集团主导的ISO密码学国际标准立项,纳入国产算法
  • AI赋能股票:流通股本与总股本:定义、区别及投资意义解析
  • 官方网站的域名/windows优化大师怎么用
  • 网页设计跟做网站一样吗/模板网站
  • 沈阳建设银行网站首页/深圳专业seo
  • 常州建设银行网站/关键字排名优化工具
  • php+缺少+wordpress/关键词优化seo多少钱一年
  • 石排镇仿做网站/网络引流怎么做啊?