我必须在Broldand 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的另一种方式?
答案 0 :(得分:0)
我99%肯定Borland C ++ 5没有64位整数类型。它似乎将long long
解释为“多种类型”并对其进行了抨击。
您使用的glew版本并非用于支持旧版本的Borland C ++。
您可以尝试破解glew头文件以删除对64位类型和函数的引用。
这也可行,但我不确定:
#undefine __BORLANDC__
#include <glew.h>