3

Visual Studio 2013 でゲームをコンパイルしようとしています。ゲームは Box2D を使用していますが、リリース モードでコンパイルすると、リリース Box2D.lib でエラーが発生します。デバッグ Box2D.lib を使用してデバッグ モードでコンパイルすると、問題なく動作します。

135 個のエラーが発生しています。主に次の 3 つのようなエラーです。

1>Box2D.lib(b2CollideEdge.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
1>MyContactListener.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) char const * __cdecl std::_Winerror_map(int)"
(__imp_?_Winerror_map@std@@YAPBDH@Z)
1>Box2D.lib(b2ContactManager.obj) : error LNK2001: unresolved external symbol _atexit

Box2D.lib を数回ビルドしましたが、適切なリリースおよびデバッグ ライブラリにリンクしていると確信しています。

コンパイラ フラグ /GS (Buffer Security Check) を無効にしようとしましたが、解決しませんでした。

Box2D.lib のビルドとゲームのコンパイルには、ランタイム ライブラリにフラグ マルチスレッド DLL (/MD) を使用します。

編集:ライブラリ「bufferoverflowU.lib」とリンクしたときに「@__security_check_cookie@4」というエラーを取り除きました。それでも133個のエラーが残っています。

4

1 に答える 1