0
我不能找到一种方法,在Linux下编译下面的测试代码(适用于Mac开发计划的一部分)OpenGL的编译 - glGetUniformLocation没有宣布
#include<GL/glui.h>
void test(){
const char *name
GLint uni_loc,x,y ;
GLuint id;
glVertex2i(x, y);
uni_loc = ::glGetUniformLocation(id, name) ;
}
我试图编译它:
g++ -c test.cpp -lglut -lGL -lGLU
g++ -c -lglut -lGL -lGLU test.cpp
我得到一个链接错误的glGetUniformLocation功能:
'::glGetUniformLocation' has not been declared
但d不知道如何解决它。我没有openGl的知识,并在不同的实现之间完全丢失。我发现这个函数的定义在
/usr/include/GL/gl_mangle.h
/usr/include/GL/glew.h
/usr/include/GL/glext.h
难道是我有错误版本的GL吗?
我已经安装了以下软件包:
freeglut3 freeglut3-dev libglew1.5 libglew1.5-dev libglu1-mesa libglu1-mesa-dev libgl1-mesa-glx libgl1-mesa-dev mesa-common-dev
和gcc版本4.7.2(Debian的4.7.2-5)。