我收到以下链接错误。 1> main.obj:错误LNK2001:未解析的外部符号___ glewGenBuffers
我下载了32位版本的glew,并在项目中包含了“includes”和“lib”目录。另外,我在附加依赖项菜单中添加了glew32.lib。然后我将glew32.dll和glew32mx.dll放在syswow64文件夹中,也放在system32文件夹中(因为我把它放在syswow64中时仍然出错)。这是一个相当简单的程序。喜欢用SDL和GLEW打开世界的hello world。只有SDL设置时,该程序才有效。连接glew后,启动了问题。
我正在使用Windows 7 Premium 64bit(现在非常明显) Visual C ++ 2010快速版。我的glew版本是glew-1.9.0-win32。
我哪里可能出错?
这是代码
#define GLEW_STATIC
#include <SDL.h>
#include <GL/glew.h>
int main( int argc, char *argv[] )
{
glewExperimental = GL_TRUE;
SDL_Init( SDL_INIT_VIDEO );
SDL_Surface* surface = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_OPENGL);
SDL_WM_SetCaption("Opengl Tutorial 1", 0);
glewInit();
GLuint vertexBuffer;
glGenBuffers( 1, &vertexBuffer );
printf( "%u\n", vertexBuffer );
SDL_Event windowEvent;
while ( true )
{
if ( SDL_PollEvent( &windowEvent ) )
{
if ( windowEvent.type == SDL_QUIT ) break;
if ( (windowEvent.type == SDL_KEYUP) && (windowEvent.key.keysym.sym == SDLK_ESCAPE) ) break;
}
SDL_GL_SwapBuffers();
}
SDL_Quit();
return 0;
}
答案 0 :(得分:2)
我解决了这个问题。我刚刚在include语句之后写了这行“#define GLEW_STATIC”(当然没有“),并立即编译。非常感谢。:)