C2086:'int WINGDIAPI':Open Scene Graph中的重定义错误?

Nav*_*Nav 5 build openscenegraph visual-studio-2010

我已经解决了这个问题(从这里开始).只要把它放在这里,以便遇到错误的任何人都会找到一个更清晰的问题和答案,而不是必须深入挖掘我从中得到它的网站.我很快就会回答这个问题.

遇到的错误是:

Error 13 error C2086: 'int APIENTRY' : redefinition C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\GL\gl.h 1153  
Error 10 error C2086: 'int WINGDIAPI' : redefinition C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\GL\gl.h 1153   
Error 3 error C2144: syntax error : 'void' should be preceded by ';' C:\Program Files\Microsoft Visual Studio 10\VC\include\GL\gl.h 1152 
Run Code Online (Sandbox Code Playgroud)

Nav*_*Nav 8

解决方案是:[从本网站获取]

您需要将WIN32添加到项目中的定义.在Visual Studio中,右键单击项目,转到C/C++,预处理器,然后在预处理器定义字段中为调试和发布配置添加WIN32.当你在它的同时,还为调试配置添加了_DEBUG,为发布配置添加了NDEBUG ...
由于某种原因,默认的VS项目没有预处理器定义,即使这些,至少应该几乎总是使用...


Gan*_*458 5

我的解决方案已经包含这些预处理器定义。MSDN建议你还添加#include <windows.h>