У меня возникли некоторые проблемы с настройкой SFML для работы в Visual Studio 2010. Я собрал его в 2010 году и следовал нескольким учебникам, но при компиляции программы я все еще получаю ошибки компоновщика. Я просто использую базовый пример, который они имеют на своем сайте:
#include <SFML/Window.hpp>
int main()
{
// Create the main window
sf::Window App(sf::VideoMode(800, 600, 32), "SFML Window");
// Start main loop
bool Running = true;
while (Running)
{
App.Display();
}
return EXIT_SUCCESS;
}
И все же я продолжаю получать это:
C:\Users\Nate\Source code\C++\SFML test\Debug\SFML test.exe : fatal error LNK1120: 4 unresolved externals
Вот что конкретно я добавил в Project -> Настройки проекта:
Я думал, что точно следовал инструкциям, и все это выглядит правильно (я дважды проверил пути и все остальное). Есть идеи?
РЕДАКТИРОВАТЬ: Кроме того, как ни странно, первый раз, когда я сделал это, он работал нормально. Я попробовал еще несколько программ, а потом они просто перестали компилироваться (даже мои первые). После этого я удалил все компоненты SFML и попробовал снова с нуля, и теперь я не могу заставить его работать вообще.
По запросу, вот остальные ошибки:
1>sfml-window-s-d.lib(Window.obj) : error LNK2019: unresolved external symbol "public: __thiscall sf::Clock::Clock(void)" (??0Clock@sf@@QAE@XZ) referenced in function "public: __thiscall sf::Window::Window(void)" (??0Window@sf@@QAE@XZ)
1>sfml-window-s-d.lib(Window.obj) : error LNK2019: unresolved external symbol "public: void __thiscall sf::Clock::Reset(void)" (?Reset@Clock@sf@@QAEXXZ) referenced in function "public: void __thiscall sf::Window::Display(void)" (?Display@Window@sf@@QAEXXZ)
1>sfml-window-s-d.lib(Window.obj) : error LNK2019: unresolved external symbol "void __cdecl sf::Sleep(float)" (?Sleep@sf@@YAXM@Z) referenced in function "public: void __thiscall sf::Window::Display(void)" (?Display@Window@sf@@QAEXXZ)
1>sfml-window-s-d.lib(Window.obj) : error LNK2019: unresolved external symbol "public: float __thiscall sf::Clock::GetElapsedTime(void)const " (?GetElapsedTime@Clock@sf@@QBEMXZ) referenced in function "public: void __thiscall sf::Window::Display(void)" (?Display@Window@sf@@QAEXXZ)
Подождите, почему он даже вызывает sf :: Clock? Я вообще не использую System.hpp, вот где это определено, я полагаю ...
ДРУГОЕ РЕДАКТИРОВАНИЕ: Хорошо, благодаря предложениям Xeo, я попробовал бета-версию SFML 2.0, и это, кажется, работает отлично. Если у кого-то есть подобная проблема, это видео было очень полезно.