首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >glad.h给出包含opengl标头的错误

glad.h给出包含opengl标头的错误
EN

Stack Overflow用户
提问于 2017-06-03 23:53:29
回答 3查看 13.6K关注 0票数 16

我正在尝试将glad.h与我的代码一起使用。我在Visual Studio 2013上编程。由于某种原因,它给了我错误C1189: #error : OpenGL header already included, remove this include, glad already provides it

有人能帮我一下吗?

以下是我列出的头文件:

代码语言:javascript
复制
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
EN

回答 3

Stack Overflow用户

发布于 2019-12-04 14:40:19

我刚刚颠倒了glfw3.hglad.h的包含顺序,如下所示:

代码语言:javascript
复制
#include <glad\glad.h>
#include <GLFW\glfw3.h>
票数 19
EN

Stack Overflow用户

发布于 2017-11-22 16:40:47

使用GLFW将GLFW_INCLUDE_NONE添加到属性->C/C++->预处理器->预处理器定义修复了这个问题

票数 9
EN

Stack Overflow用户

发布于 2021-12-06 02:22:36

来自https://www.glfw.org/docs/3.3/build_guide.html#GLFW_INCLUDE_NONE

如果你使用的是OpenGL扩展加载库,那么扩展加载器报头应该放在GLFW头之前。GLFW尝试检测之前包含的任何OpenGL或OpenGL ES报头或扩展加载器报头,然后禁用默认OpenGL报头的包含。大多数扩展加载器还定义了禁用其下类似标头的宏。

代码语言:javascript
复制
#include <glad/gl.h>
#include <GLFW/glfw3.h>

这两种机制都依赖于定义已知宏的扩展加载器标头。如果您的GLFW头没有包含OpenGL头,或者您不知道用户会选择哪一个,GLFW宏将显式地阻止GLFW头包含GLFW头。这还允许您以任意顺序包含两个标头。

代码语言:javascript
复制
#define GLFW_INCLUDE_NONE
#include <GLFW/glfw3.h>
#include <glad/gl.h>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44345811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档