0

我必须在 Boldand 5.02 制作的非常旧的 OpenGL 程序中实现 VBO,但是当我尝试包含 GL/glew.h 时出现以下错误:

Info :Compiling C:\fontesusr\vertexbuffer.cpp
Error:  glew.h(269,25):Too many types in declaration
Error:  glew.h(270,27):Too many types in declaration
Error:  glew.h(13275,185):Multiple declaration for 'PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3F'
Error:  glew.h(13274,185):Earlier declaration of 'PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3F'

问题出现在以下 glew 代码中:

#elif defined(_MSC_VER) || defined(__BORLANDC__)
    typedef signed long long GLint64EXT;
    typedef unsigned long long GLuint64EXT;
#else

我认为这是因为 borland 5.02 是一个 32 位编译器...

有人可以给我一个建议,我可以做些什么来解决这个问题?或另一种在不使用 glew 库的情况下实现 VBO 的方法?

4

1 回答 1

0

我 99% 确定 Borland C++ 5 没有 64 位整数类型。它似乎被解释long long为“多种类型”并且对此感到厌烦。

您使用的 glew 版本不是为支持旧版本的 Borland C++ 而编写的。

您可以尝试破解 glew 头文件以删除对 64 位类型和函数的引用。

这也可能有效,但我不确定:

#undefine __BORLANDC__
#include <glew.h>
于 2012-04-22T13:53:08.247 回答