无法在 OSX 下编译 OpenGL 项目
Posted
技术标签:
【中文标题】无法在 OSX 下编译 OpenGL 项目【英文标题】:Can't compile OpenGL project under OSX 【发布时间】:2015-05-30 19:56:56 【问题描述】:有一个 OpenGL 项目我必须为我正在参加的课程工作。 由于 GLEW 存在链接错误。经过一番研究,我发现在 OSX GLEW 上是没有必要的。
我包含以下标题。
//#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 分别位于何处。 GL_TEXTURE_BUFFER 定义了吗?
【问题讨论】:
【参考方案1】:EXT 变体将仅在 glext.h
或由各种 GL 扩展加载器生成或生成的标头中定义。实际的GL_TEXTURE_BUFFER
枚举在OpenGL/gl3.h
中定义。在 OSX 上,现代 GL 是操作系统的一部分,您可以直接链接现代 GL 功能。但是,出于可移植性的原因,我仍然建议使用一些 GL 加载程序。
【讨论】:
其实它是一个多平台项目,它使用 GLEW 和 GLFW 作为包装器,我想这些是你所指的加载器。但我无法让 GLEW 链接。由于我只需要编写一些着色器,因此我不想打扰太多。以上是关于无法在 OSX 下编译 OpenGL 项目的主要内容,如果未能解决你的问题,请参考以下文章
杂记:OSX下编译安装最新版RedisDesktopMmanager
OSX下编译安装opencv3.1.0与opencv_contrib_master