MS visual studio 2013 SDL не работает

0

Я использую SDL в своем проекте, но у меня возникла проблема. Я последовал за учебником о том, как включить SDL в визуальную студию MS здесь, но это не помогло. Вот шаги, которые я предпринял.

Во-первых, я добавил каталог ввода SDL в блок C/C++/General "Дополнительные каталоги ввода":

Изображение 174551

Во-вторых, я добавил каталог SDL lib в блок компоновщика Linker/General "Дополнительные библиотеки":

Изображение 174551

В-третьих, я добавил SDL2.lib; SDL2main.lib в раздел "Дополнительные зависимости" в Linker/input:

Изображение 174551

И, наконец, я установил раздел подсистемы в Linker/system в Console (/SUBSYSTEM: CONSOLE):

Изображение 174551

Однако это не сработало, когда я попытался запустить тестовый код, который был предоставлен в учебнике:

#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 ==========

Я подумал, что я хорошо слежу за учебником, но, видимо, нет. Пожалуйста, помогите мне!

Заранее спасибо!

Приветственные инженеры

Теги:
linker
visual-studio-2013
dependencies
sdl

1 ответ

3
Лучший ответ

Кажется, что ошибка заключается в том, что вы создаете 32-битное приложение, но указываете на 64-битные библиотеки.

Ваша ошибка:

Build started: Project: Project2, Configuration: Debug Win32

Но ваш каталог библиотеки, который вы установили, имеет x64 в качестве подкаталога.

  • 0
    Теперь он говорит, что SDL2.dll отсутствует на компьютере, хотя я видел его в input / x86 ... извините, что я продолжаю об этом
  • 1
    Отсутствующие библиотеки DLL выходят за пределы стадии сборки. Простое решение - установить DLL в каталог либо в PATH, либо в каталог исполняемых файлов вашего приложения. В противном случае следуйте указаниям Windows для разрешения DLL: msdn.microsoft.com/en-us/library/windows/desktop/…

Ещё вопросы

Сообщество Overcoder
Наверх
Меню