1

我有一个使用标准 gnu 工具(gmake/gcc)在 linux 上开发的小型 opengl 3.2 应用程序。代码看起来很便携——在我开始使用 mac mini gl 驱动程序似乎不支持的 gl3 功能之前,我在 osx 上运行它没有问题。我在同一个 mini 上有一个带有 windows xp 的 bootcamp 分区,如果可能的话,我想在那里运行我的应用程序。

Windows 驱动程序肯定支持 gl 3.2,但我无法链接。这似乎是一个非常普遍的问题,但我没有在网上找到任何在cygwin下使用opengl > 1.2解决的答案。我正在使用 glew-1.5.5 并像这样链接:

g++ -o glToy *.o -L/cygdrive/c/Program\ Files/glew-1.5.5/lib -lglew32 -lglut32 -lglu32 -lopengl32

但我得到了很多这样的输出:

Program.o:/home/Jacob/glToy/Program.cpp:134: 未定义对“__imp____glewUseProgram”的引用
Program.o:/home/Jacob/glToy/Program.cpp:235: 未定义对“__imp____glewActiveTexture”的引用
Program.o:/home/Jacob/glToy/Program.cpp:73: 未定义对 `__imp____glewGetShaderiv' 的引用
...

任何想法我做错了什么?或者这不是一个可行的设置?在 mac mini(2009 版)上进行此操作的其他想法?谢谢!

4

2 回答 2

3

您也可以跳过链接,只需获取 glew.c 并将其放入 /include(不是 /include/GL 之类的 glew.h),然后更改您的#include to <glew.c>

于 2011-01-01T02:31:48.210 回答
0

您没有正确链接 glew 或 glew 已损坏...与 gl 本身无关

简单的解决方法就是使用扩展 api 而忘记 glew。

于 2010-09-23T09:34:27.440 回答