cgasser
cgasser

Reputation: 603

Linker problems with GLEW and CodeBlcks

I'm trying to get glew to work with Code::Blocks. I'm using OpenGL with SDL. From what I've read I'm having problems with linking according to my errors.(see below) Here is how my linking in CB is setup

enter image description here

Errors

-------------- Build: Debug in ColdFusion ---------------

Linking executable: bin\Debug\ColdFusion.exe
Warning: .drectve `/DEFAULTLIB:"LIBCMT" /DEFAULTLIB:"OLDNAMES" ' unrecognized
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_1_2]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_1_3]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_1_4]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_1_5]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_2_0]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_GL_VERSION_2_1]+0x4): more undefined references to `_imp__wglGetProcAddress@4' follow
lib\glew32s.lib(./static/release/glew.obj):(.text[_glewGetExtension@4]+0xa): undefined reference to `_imp__glGetString@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[_glewContextInit@0]+0x4): undefined  reference to `_imp__glGetString@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_3DL_stereo_control]+0x7): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_AMD_gpu_association]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_ARB_buffer_region]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_ARB_create_context]+0x7): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_ARB_extensions_string]+0x7): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[__glewInit_WGL_ARB_make_current_read]+0x4): more undefined references to `_imp__wglGetProcAddress@4' follow
lib\glew32s.lib(./static/release/glew.obj):(.text[_wglewGetExtension@4]+0x21): undefined reference to `_imp__wglGetCurrentDC@0'
lib\glew32s.lib(./static/release/glew.obj):(.text[_wglewContextInit@0]+0x4): undefined reference to `_imp__wglGetProcAddress@4'
lib\glew32s.lib(./static/release/glew.obj):(.text[_wglewContextInit@0]+0x3e): undefined reference to `_imp__wglGetCurrentDC@0'
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 5 seconds)
15 errors, 1 warnings

Upvotes: 2

Views: 3237

Answers (1)

Some programmer dude
Some programmer dude

Reputation: 409176

While I don't know how Code::Blocks handles libraries and their order, I know that the order is important. You need to place the libraries that depend on something before the library it depends on.

So if one of the SDL libraries depend on function in the glew library, then the glew library should be after the SDL library in the list.

Upvotes: 3

Related Questions