Windows上使用VS2026和CMake编译LearnOpenGL项目源代码

Windows上使用VS2026和CMake编译LearnOpenGL项目源代码

关于learnopengl项目

learnopengl项目英文官方地址为:https://learnopengl.com/

如下图所示:

LearnOpenGL教程的中文翻译地址为:https://learnopengl-cn.readthedocs.io/zh/latest/ 如下图所示:

由于翻译可能无法做到精确表达原文意思,我们推荐您在对问题有疑惑的时候去阅读一下英文版的教程。如果您对翻译有更好的建议,可以去我们的GitHub工程上提交Issue或者Pull Request。

如果可以的话,请访问https://learnopengl-cn.github.io/,这里是采用新主题的网站。这里的翻译版本会比较落后一些,只会不定时更新。

https://learnopengl-cn.github.io/ 如下图所示:

通过https://learnopengl-cn.github.io/这个中文网站我们可以学习很多关于OpenGL的知识点,讲解得非常详细,还有配套代码学习参考,对新手来说很不错。

下载LearnOpenGL项目源代码

LearnOpenGL项目源代码托管在Github仓库,其地址为:https://github.com/JoeyDeVries/LearnOpenGL

如果在Windows上安装了git工具,直接运行如下命令下载源代码:

bash 复制代码
git clone https://github.com/JoeyDeVries/LearnOpenGL.git

或者

bash 复制代码
git clone git@github.com:JoeyDeVries/LearnOpenGL.git

如果没有安装git工具,可以直接下载ZIP源代码压缩包,如下图所示:

下载后的源代码目录结构如下图所示:

你可以在每一篇教程中找到在线的代码范例,但如果你想自己运行教程的Demo或者将正常工作的范例代码与你的代码进行比较,你可以在这里找到在线的GitHub代码仓库。

目前,CMakeLists.txt文件能够正常生成Visual Studio的工程文件和make文件,它能够在Windows和Linux上运行。但是它在Apple的macOS和其它的IDE上还没有进行非常完全的测试,所以如果出现问题你可以留言或者帮忙通过Pull Request来更新一下CMakeLists.txt文件让它支持不同的系统。

我非常感谢Zwookie在制作Linux的CMake脚本时提供的巨大帮助。感谢Zwookie对CMakeLists的更新,现在它能够在Windows和Linux上生成工程文件了。

你也可以查看Polytonic的Glitter,它是一个非常简单的样板工程,它提供了已经预配置好的相关依赖项。

使用VS2026和CMake编译LearnOpenGL项目源代码

首先在Windows上安装好Visual Studio 2026或者其他版本的Visual Studio,同时安装好CMake,至于安装就不再赘余了。

在LearnOpenGL源代码目录下创建一个build文件夹

为了简单,我们直接使用CMake GUI工具编译运行,打开CMake GUI工具,设置好源代码目录和编译构建目录,如下图所示:

然后我们点击左下角的【Configure】按钮,选择工程的生成器,这里选择【Visual Studio 18 2026】,如下图所示:

然后点击【Finish】按钮,可以看到报错了:

说明CMakeLists.txt里面的CMake版本写得太低了,我们可以修改LearnOpenGL项目源代码中的CMakeLists.txt文件,如下图所示:

如果使用的是CMake命令行编译,在cmake命令后面指定 -DCMAKE_POLICY_VERSION_MINIMUM=3.5参数即可。

这里我们使用的CMake-GUI工具,可以直接修改LearnOpenGL源代码中根目录下的CMakeLists.txt文件,将CMake最小版本从3.0改成3.5即可。如下图所示:

然后转到CMake-GUI工具中,重新点击【Configure】按钮,如下图所示,

这会提示了CMake 3.10版本最小的版本号,在将来CMake版本中会被移除,但是不影响项目工程文件生成。

然后我们再点击【Generate】按钮,接着在E:\projects\VS2026Projects\LearnOpenGL\LearnOpenGL\build目录下生成了Visual Studio项目工程文件,如下图所示:

接着我们使用VS2026打开LearnOpenGL.slnx工程文件,如下图所示:

我们选中【All_BUILD】项目,在右键弹出菜单中点击【生成】,看到所有项目全部生成成功了,如下图所示:

此时在E:\projects\VS2026Projects\LearnOpenGL\LearnOpenGL\bin目录下生成了很多二进制程序,如下图所示:


例如我们运行E:\projects\VS2026Projects\LearnOpenGL\LearnOpenGL\bin\1.getting_started\Debug下的1.getting_started__2.1.hello_triangle.exe二进制程序,可以显示一个三角形,如下图所示:

参考资料

相关推荐
LRL_1 小时前
【K8s 存储】Longhorn v1.12.1 离线安装全流程:外网制作离线包 + 内网部署(附踩坑实录)
linux·windows·node.js
FACELESS VOID1 小时前
wsl下使用npm,错误识别到了windows下的npm
linux·windows·npm
星间都市山脉2 小时前
RecoveryUI 圆角屏安全边距配置及代码调用链
android·java·linux·windows·ubuntu
泡海椒2 小时前
JQuick-Excel JQuickRow 数据准备实战:JObjectConverter、JQuickRow.toRows 与 XML 导出链路
xml·windows·excel
王维同学3 小时前
ETW监控-KswordARK功能展示
c++·windows·安全
呉師傅16 小时前
得力P2500、M2500系列打印机硒鼓加粉及清零方法【纯享版】
运维·网络·windows·电脑
ZhangJun9517 小时前
从零写一个类鲁大师的硬件检测小工具,软件附上,可直接使用
windows·测试工具·电脑·笔记本电脑·硬件架构
imperialeast19 小时前
创建WAV文件 韩文、德文、俄文等unicode音乐标签
windows·小程序
易点云徐源19 小时前
社保费管理客户端打开后进度条卡20%,等待1分钟提示获取接收配置失败
windows
I'mChloe20 小时前
Windows部署BiliNote:Docker安装、AI视频转写、Markdown笔记与cpolar远程访问
人工智能·windows·docker