我想进入并学习 C++ 中的 OpenGL,并且正在使用 Code::Blocks。我能够让 freeglut 工作,以及几个在线示例(以及 CB 附带的示例)。
但是,当我尝试在我正在关注的一些教程中包含 GLEW 时,我收到以下编译器错误:
obj\Debug\main.o||In function `RenderSceneCB':|
C:\C Programs\OpenGL Test\main.cpp|12|undefined reference to `_imp____glewEnableVertexAttribArray'|
C:\C Programs\OpenGL Test\main.cpp|13|undefined reference to `_imp____glewBindBuffer'|
C:\C Programs\OpenGL Test\main.cpp|14|undefined reference to `_imp____glewVertexAttribPointer'|
C:\C Programs\OpenGL Test\main.cpp|18|undefined reference to `_imp____glewDisableVertexAttribArray'|
obj\Debug\main.o||In function `CreateVertexBuffer':|
C:\C Programs\OpenGL Test\main.cpp|34|undefined reference to `_imp____glewGenBuffers'|
C:\C Programs\OpenGL Test\main.cpp|35|undefined reference to `_imp____glewBindBuffer'|
C:\C Programs\OpenGL Test\main.cpp|36|undefined reference to `_imp____glewBufferData'|
||=== Build finished: 7 errors, 0 warnings (0 minutes, 0 seconds) ===|
无论我做什么,尝试什么建议,尝试链接什么其他文件,我都会不断收到这些相同的错误。我让其他人尝试了该代码,他们说它工作得很好,但对我的 GLEW 设置有什么问题没有任何想法。
任何人有任何想法,都可以向我提出。
我使用的是 Windows 7、Code::Blocks 12.11,并下载了适用于 GLEW 1.9.0 的 Ming32 二进制文件。
我的链接器设置是按以下顺序设置的:
格卢32
自由过剩
OpenGL32
谷氨酸32
温姆
GDI32
您的链接器设置有问题。你必须链接
glew32s.lib
不仅glew32.lib你必须链接glew32s.lib另外,请确保它必须位于链接器列表的顶部。
编写代码时不要忘记定义
#定义GLEW_STATIC
位于源文件的顶部。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)