GLU引起的错误包括(GLEW)

时间:2017-08-25 10:41:27

标签: c opengl include glew glu

我有一个使用GLEW的OpenGL C项目。当我使用MinGW64在Windows中编译时,我收到以下错误:

In file included from C:/Program Files/Git/mingw64/x86_64-w64-mingw32/include/GL/glew.h:1204:0,
                 from ...

C:/Program Files/Git/mingw64/x86_64-w64-mingw32/include/GL/glu.h:68:79: error: expected ')' before '*' token
 void APIENTRY gluQuadricCallback(GLUquadric *qobj,GLenum which,void (CALLBACK *fn)());
                                                                               ^
C:/Program Files/Git/mingw64/x86_64-w64-mingw32/include/GL/glu.h:78:79: error: expected ')' before '*' token
 void APIENTRY gluTessCallback(GLUtesselator *tess,GLenum which,void (CALLBACK *fn)());
                                                                                                                                           ^
C:/Program Files/Git/mingw64/x86_64-w64-mingw32/include/GL/glu.h:96:24: error: expected ')' before '*' token
 typedef void (CALLBACK *GLUquadricErrorProc)(GLenum);
...

以下是导致文件GL / glew.h中的错误的代码片段:1204:0

1199    #ifndef GLEW_NO_GLU
1200    /* this is where we can safely include GLU */
1201    #  if defined(__APPLE__) && defined(__MACH__)
1202    #    include <OpenGL/glu.h>
1203    #  else
1204    #    include <GL/glu.h>
1205    #  endif
1206    #endif

第1204行是GLU的一个包含,但我不知道为什么我会这样,我不在我的项目中使用GLU。 如果我在此代码段之前添加行#define GLEW_NO_GLU,则会跳过它,并且不再包含GLU。 结果:没有更多错误。我的程序编译并运行得很好。

有人可以解释发生了什么吗?为什么我必须修改GLEW标头才能使其正常工作?

0 个答案:

没有答案