无法在 OSX 下编译 OpenGL 项目

Can't compile OpenGL project under OSX

有一个 OpenGL 项目我必须为我正在参加的课程工作。 由于 GLEW,存在 link 个错误。经过一些研究,我发现 OSX GLEW 不是必需的。

我包括以下内容 headers。

//#include "CL/cl_gl.h"
#include <OpenGL/glu.h>
#include <OpenGL/gl.h>
//#include <OpenGL/glext.h> 
//#include <GLUT/glut.h>

但我仍然遇到以下类型的编译错误:

  use of undeclared identifier 'GL_TEXTURE_BUFFER_EXT'
    glBindTexture(GL_TEXTURE_BUFFER_EXT, 0);
                  ^

OSX 上的位置是 GLenum GL_TEXTURE_BUFFER_EXT resp。 GL_TEXTURE_BUFFER定义了吗?

EXT 变体只会在 glext.h 或 headers 中定义,它们由各种 GL 扩展加载程序生成。实际的 GL_TEXTURE_BUFFER 枚举在 OpenGL/gl3.h 中定义。在 OSX 上,现代 GL 是 OS 的一部分,您可以直接 link 现代 GL 功能。但是,出于可移植性的原因,我仍然建议使用一些 GL 加载程序。