在我的代码中添加 glew.h 的那一刻,过剩相关的错误开始出现

The moment I add glew.h in my code glut related errors start appearing

我是 C/C++ 环境设置的新手。现在我正在使用 Eclipse IDE。以下是我遵循的步骤 安装完MinGW和运行基本的HelloWorld,C程序 1) 将 glew32.dll 和 glut32.dll 复制到 "C:\MinGW\bin" 2) 将gl.h、glew.h、glu.h和glut.h复制到"C:\MinGW\include\GL" 3) 将glew32.lib、glut32.lib和OPENGL32.LIB复制到"C:\MinGW\lib" 4) 在 Project->properties->C/C++ Build->Settings->Tool Settings->MinGW C Linker->Libraries(-l) 添加 "glew32", "glut32","glu32" 和 "opengl32" 5) 复制以下代码

正确编译。

当我取消注释第一行时,即 glew.h,出现了与过剩相关的编译错误(在下面添加),谁能告诉我在设置过程中哪里出错了?

//#include <GL/glew.h>
#include <GL/gl.h>
#include <GL/glut.h>

void changeViewport(int w, int h)
{
    glViewport(0, 0, w, h);
}

void render()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glutSwapBuffers();
}


int main(int argc, char** argv)
{
    glutInit(&argc, argv);

    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH);
    glutInitWindowSize(800, 600);
    glutCreateWindow("Pinnen is the best");
    glutReshapeFunc(changeViewport);
    glutDisplayFunc(render);
    glutMainLoop();
    return 0;
}


Description Resource    Path    Location    Type
undefined reference to `__glutCreateMenuWithExit'   OpenGL      line 549, external location: c:\mingw\include\GL\glut.h C/C++ Problem
undefined reference to `__glutCreateWindowWithExit' OpenGL      line 503, external location: c:\mingw\include\GL\glut.h C/C++ Problem
undefined reference to `__glutInitWithExit' OpenGL      line 486, external location: c:\mingw\include\GL\glut.h C/C++ Problem
undefined reference to `glutDisplayFunc'    OpenGL.c    /OpenGL/src line 25 C/C++ Problem
undefined reference to `glutInitDisplayMode'    OpenGL.c    /OpenGL/src line 21 C/C++ Problem

//忽略

来自 glew webpage [删除 gl include] :

将 GLEW 用作共享库

在您的程序中:

#include <GL/glew.h>
#include <GL/glut.h>
<gl, glu, and glut functionality is available here>

或:

#include <GL/glew.h>
<gl and glu functionality is available here>

记得 link 你的项目 glew32.lib、glu32.lib 和 opengl32.lib 在 Windows 和 libGLEW.so、libGLU.so,以及 Unix 上的 libGL.so (-lGLEW -lGLU -lGL)。 请务必牢记 glew.h 既不包含 windows.h 也不包含 gl.h。此外,如果您在 glew.h.

之前包含 gl.h、glext.h 或 glATI.h,GLEW 将通过发出预处理器错误来警告您