SDL je většinou v /usr/include/SDL
. Pokud ano, pak vaše #include <SDL.h>
direktiva je chybná, měla by být #include <SDL/SDL.h>
.
Alternativou k tomu je přidání /usr/include/SDL
adresáře do začleněných adresářů. K tomu byste měli přidat -I/usr/include/SDL
na příznaky kompilátoru...
Pokud používáte IDE, mělo by to být také docela snadné...
Pokud je soubor záhlaví /usr/include/sdl/SDL.h
a váš kód má:
#include "SDL.h"
Musíte buď opravit svůj kód:
#include "sdl/SDL.h"
Nebo sdělte preprocesoru, kde má najít zahrnuté soubory:
CFLAGS = ... -I/usr/include/sdl ...
hlavičkový soubor žije na
/usr/include/SDL/SDL.h
__OR__
/usr/include/SDL2/SDL.h # for SDL2
ve vašem kódu c++ vytáhněte tuto hlavičku pomocí
#include <SDL.h>
__OR__
#include <SDL2/SDL.h> // for SDL2
máte správné použití
sdl-config --cflags --libs
__OR__
sdl2-config --cflags --libs # sdl2
který vám dá
-I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT
-L/usr/lib/x86_64-linux-gnu -lSDL
__OR__
-I/usr/include/SDL2 -D_REENTRANT
-lSDL2
občas můžete také vidět toto použití, které funguje pro standardní instalaci
pkg-config --cflags --libs sdl
__OR__
pkg-config --cflags --libs sdl2 # sdl2
který vám dodává
-D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -lSDL
__OR__
-D_REENTRANT -I/usr/include/SDL2 -lSDL2 # SDL2
Pro Simple Direct Media Layer 2 (SDL2), po instalaci na Ubuntu 16.04 přes:
sudo apt-get install libsdl2-dev
Použil jsem záhlaví:
#include <SDL2/SDL.h>
a příkaz linkeru kompilátoru:
-lSDL2main -lSDL2
Kromě toho můžete také chtít nainstalovat:
apt-get install libsdl2-image-dev
apt-get install libsdl2-mixer-dev
apt-get install libsdl2-ttf-dev
S těmito záhlavími:
#include <SDL2/SDL_image.h>
#include <SDL2/SDL_ttf.h>
#include <SDL2/SDL_mixer.h>
a příkazy linkeru kompilátoru:
-lSDL2_image
-lSDL2_ttf
-lSDL2_mixer