2

我正在尝试编译链接到 OpenGL 的代码。它最初是为 Linux 开发的,所以对于 Windows (7),我使用 MinGW 进行编译。

MinGW 包括 OpenGL 头文件和包含 Windows 库 (opengl32.dllglu32.dll) 的库,但是代码包含对较新 OpenGL 功能的调用,并且编译失败。用最新的 Mesa3d 替换 MinGW 的标头(Mesa3d 的标头的旧版本,支持 OpenGL 1.1)取得了一些成功。它将编译,但链接失败,因为库仍然缺少符号(将编译器直接指向 Windows OpenGL 库没有区别)。我已经确认图形硬件(Nvidia 560M)支持最新的 OpenGL 标准(事实上,它可以在同一台机器上的 Linux 上运行)。

我尝试安装 Nvidia 的 SDK,但它们仅在最新版本中包含 Direct3d(不是选项),并且不再提供旧版本(确实支持 OpenGL)供下载。

我是否以正确的方式进行此操作,并且确实需要 Nvidia 的 SDK,或者我应该做些什么来链接正确的库?

编辑:链接到的特别缺少的功能是glBufferData, glMapBuffer, glUnmapBuffer, glBindBuffer, glGenBuffer, 和glDeleteBuffer.

4

1 回答 1

0

您需要的是一个 OpenGL 加载库,您应该在 Linux 和 Windows 上都使用它。这将确保您获得您感兴趣的平台所需的所有功能。

有几个你可以选择,每个都有自己的长处和短处。

于 2012-08-28T12:34:35.683 回答