1

这似乎是一个相当普遍的问题,我似乎也找不到一个好的解决方案。我读过的大多数论坛或问题都会告诉你出了什么问题,但没有解释如何很好地解决它。我一直在尝试使用 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 ===|

我的链接器是如何设置的: 在此处输入图像描述

我读过的一件事可能是错误的,即 GLEW 需要编译为 glew32.a 而不是 glew32.lib 但我无法让 Makefile 与 Cygwin 一起使用。我也注意到这似乎是人们遇到的一些常见问题。我知道有很多问题要问,但是有人可以为 Mingw 编译 GLEW 并上传它,或者一步一步详细说明如何做吗?我在这方面遇到的麻烦比我应该做的要多,这让我不得不放弃学习 OpenGL 4 并坚持使用 OpenGL 1.2。

4

1 回答 1

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 到 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. .2012

那么问题出在哪里??

于 2012-08-15T20:10:01.690 回答