未定义的引用`_imp__glewInit @ 0'

时间:2012-07-29 16:02:41

标签: c++ opengl codeblocks mingw32 glew

我已经多次构建了glew lib。我的上一个构建删除了对所有着色器函数(例如glCreateShader())的未定义引用。我认为这个构建是正确的,因为我发现Code:Blocks可以打开Visual Studio 6.0项目,因此它为我提供了所有内容。

我可以在不调用glewInit()的情况下编译我的应用,但在调用glCreateShader()时会产生SEGFAULT。这是由于没有初始化glew引起的。

我需要打开它,但它不会让我XD

链接:mingw32,glew32,opengl32,glu32,glut32

IDE:Code :: Blocks

编译器:MINGW32

3 个答案:

答案 0 :(得分:19)

为自己省去很多麻烦,只需将glew.c直接添加到您的项目中即可。我不明白为什么人们如此努力地将其与外部联系起来。许可证是友好的,它只是一个源文件。请记住#define GLEW_STATIC

答案 1 :(得分:0)

在使用它的lib之后链接glew32

答案 2 :(得分:-1)

在要使用OpenGL的Ubuntu 18.04中,应安装GLEW:

apt-get install libglew-dev   

并且当添加链接器选项:“ -lGLEW”到链接器调用时有效,例如在FLTK的Makefile中:

...
# HOW TO LINK
.o$(EXEEXT):
  @echo "*** Linking $@..."
  $(CXX) $< $(LINKFLTK_ALL) -lGLEW -o $@