Я использую SDL в своем проекте, но у меня возникла проблема. Я последовал за учебником о том, как включить SDL в визуальную студию MS здесь, но это не помогло. Вот шаги, которые я предпринял.
Во-первых, я добавил каталог ввода SDL в блок C/C++/General "Дополнительные каталоги ввода":
Во-вторых, я добавил каталог SDL lib в блок компоновщика Linker/General "Дополнительные библиотеки":
В-третьих, я добавил SDL2.lib; SDL2main.lib в раздел "Дополнительные зависимости" в Linker/input:
И, наконец, я установил раздел подсистемы в Linker/system в Console (/SUBSYSTEM: CONSOLE):
Однако это не сработало, когда я попытался запустить тестовый код, который был предоставлен в учебнике:
#include <iostream>
#include <SDL.h>
int main(int argc, char **argv){
if (SDL_Init(SDL_INIT_EVERYTHING) != 0){
std::cout << "SDL_Init Error: " << SDL_GetError() << std::endl;
return 1;
}
SDL_Quit();
return 0;
}
потому что я получил эти ошибки сборки, когда я отлаживал:
1>------ Build started: Project: Project2, Configuration: Debug Win32 ------
1>start.obj : error LNK2019: unresolved external symbol _SDL_GetError referenced in function _SDL_main
1>start.obj : error LNK2019: unresolved external symbol _SDL_Init referenced in function _SDL_main
1>start.obj : error LNK2019: unresolved external symbol _SDL_Quit referenced in function _SDL_main
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
1>c:\users\holger\documents\visual studio 2013\Projects\Game\Debug\Project2.exe : fatal error LNK1120: 4 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Я подумал, что я хорошо слежу за учебником, но, видимо, нет. Пожалуйста, помогите мне!
Заранее спасибо!
Приветственные инженеры
Кажется, что ошибка заключается в том, что вы создаете 32-битное приложение, но указываете на 64-битные библиотеки.
Ваша ошибка:
Build started: Project: Project2, Configuration: Debug Win32
Но ваш каталог библиотеки, который вы установили, имеет x64
в качестве подкаталога.