Я пытаюсь скомпилировать свою игру с помощью Visual Studio 2013. Игра использует Box2D, но при компиляции в режиме Release выпуск Box2D.lib выдает ошибки. Он отлично работает при компиляции в режиме отладки с отладкой Box2D.lib.
Я получаю 135 ошибок, и в основном это примерно три:
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 (Проверка безопасности буфера), но это не помогло.
Для сборки Box2D.lib и при компиляции игры я использую флаг Многопоточная DLL (/ MD) для библиотеки времени выполнения.
РЕДАКТИРОВАТЬ: Я избавился от ошибок «@__ security_check_cookie @ 4» при подключении к библиотеке «bufferoverflowU.lib». Тем не менее, 133 ошибки остаются.