2012-04-12 149 views
4

私はこの問題を解決しました(hereから)。ちょうどここに入れて、エラーに遭遇した誰かが、私がそれを入手したウェブサイトを掘り進むよりも、きれいな質問と答えを見つけるでしょう。私はすぐに自分自身でこの質問に答えるだろう。遭遇C2086: 'int WINGDIAPI':オープンシーングラフの再定義エラー?

エラーは以下のとおりです。

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 

答えて

6

解決策がある:[あなたのプロジェクトでの定義にWIN32を追加する必要がthis website]

から得られます。 Visual Studioで、プロジェクトを右クリックし、C/C++、プリプロセッサ、およびプリプロセッサ定義フィールドに移動し、デバッグとリリースの両方の設定にWIN32を追加します。また、デバッグ設定には_DEBUGを、リリース設定にはNDEBUGを追加してください。
何らかの理由で、デフォルトのVSプロジェクトには、少なくともほとんどの場合、プリプロセッサ定義がありません。 ..

3

私の解決策には、すでにプリプロセッサの定義が含まれていました。 MSDNは、あなたも追加することをお勧めします#include <windows.h>

1

私はCMakeソリューションを追加したいと思います。

アドバンストエントリにあるCMAKE_CXX_FLAGSに/ D "WIN32"を追加する必要があります。

2

WIN32だけでなく_WIN32を探しているコードがありました。何が価値があるために

、人気のサウンド・ライブラリーは、WINDOWS.Hを含む前にこれを使用しています。

#if defined(_WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(_WIN64) 
#include <windows.h> 
#endif 
関連する問題