如何将GLEW与Code :: Blocks一起使用

时间:2012-08-15 00:46:17

标签: linker mingw codeblocks glew

这似乎是一个相当普遍的问题,我似乎也找不到好的解决方案。我读过的大多数论坛或问题都告诉你什么是错的,但是不解释如何解决它。我试图使用Code :: Blocks设置GLEW并且我现在无法让它工作大约两周,所以我没有尝试过多少。我一直在遇到链接器错误,例如:

obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|57|undefined reference to `_imp____glewGenBuffers'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|59|undefined reference to `_imp____glewBindBuffer'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|61|undefined reference to `_imp____glewBufferData'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|63|undefined reference to `_imp____glewEnableVertexAttribArray'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|64|undefined reference to `_imp____glewBindBuffer'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|72|undefined reference to `_imp____glewVertexAttribPointer'|
obj\Debug\src\Graphics.o:D:\cold-fusion-engine\ColdFusion\src\Graphics.cpp|77|undefined reference to `_imp____glewDisableVertexAttribArray'|
||=== Build finished: 7 errors, 0 warnings ===|

我的链接器是如何设置的: enter image description here

我读过的一件事可能是错误的,GLEW需要编译为glew32.a而不是glew32.lib,但是我无法让Makefile与Cygwin一起工作。我也注意到这似乎是人们常见问题的一部分。我知道要问很多但是有人可能会为Mingw编译GLEW并上传它或者一步一步地提供详细如何做到这一点?我遇到的问题比我应该更麻烦,这让我开始放弃学习OpenGL 4而只是坚持使用OpenGL 1.2。

1 个答案:

答案 0 :(得分:0)

我曾经想测试一个大问题是制作glew-1.9.0。

我假设你在安装的同一个驱动器上有msys和mingw。例如 C:\ msys \ 1.0 \和C:\ mingw *

  • 已下载glew-1.9.0。
  • 设置env路径,首先插入路径变量x:\ msys \ 1.0 \ bin; x:\ mingw \ bin; ....
  • 将文件夹glew-1.9.0复制到x:\ msys \ 1.0 \ src \ glew-1.9.0
  • 启动msys.bat
  • cd到顶级/
  • cd to usr / src / glew-1.9.0
  • 使

所有这些步骤大约需要10分钟。在usr / src / glew-1.9.0 / lib文件夹中,我可以看到

libglew32.a .. 15.08.2012 libglew32.dll.a .. 15.08.2012 libglew32mx.a .. 15.08.2012 libglew32mx.dll.a .. 15.08.2012 glew32.dll .. 15.08.2012 glew32mx.dll .. 15.08.2012

那么问题在哪里?