Bonjour, j'ai essayé d'installer la SDL sous linux(Rasbian) mais je n'y arrive pas. Après avoir extrait le fichier de Development Librairies, j'ai eu un fichier "usr" qui contenait des fichiers "bin", "include", "lib64" et "share". Ensuite, j'ai copié les fichiers de bin dans /usr/bin ceux de lib64 dans lib etc...
Dans Geany, je peux complier mais pas construire :
gcc -Wall -c "main.c" -ISDL (dans le dossier : /home/pi/Desktop)
Compilation terminée avec succès.
gcc -Wall -o "main" "main.c" -ISDL (dans le dossier : /home/pi/Desktop)
/usr/bin/ld: /tmp/cc5SB6Cg.o: in function `main':
main.c:(.text+0x18): undefined reference to `SDL_Init'
/usr/bin/ld: main.c:(.text+0x2c): undefined reference to `SDL_SetVideoMode'
/usr/bin/ld: main.c:(.text+0x34): undefined reference to `SDL_Quit'
/usr/bin/ld: /tmp/cc5SB6Cg.o: in function `pause':
main.c:(.text+0x68): undefined reference to `SDL_WaitEvent'
collect2: error: ld returned 1 exit status
Compilation échouée.
Dans Code::Blocks lorsque je construit :
||=== Build: Debug in SDLtest (compiler: GNU GCC Compiler) ===|
||error: ld returned 1 exit status|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
-------------- Build: Debug in SDLtest (compiler: GNU GCC Compiler)---------------
g++ -o bin/Debug/SDLtest obj/Debug/main.o -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread
/usr/bin/ld: /usr/lib/libSDL.a: error adding symbols: file format not recognized
collect2: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
Geany n'est qu'un éditeur de texte. Il faut que tu configure tes outils pour te lier proprement à SDL. En genéral on utilise pkg-config pour ça, ou CMake pour trouver les bibliothèques, etc.
Exemple :
g++ test.cpp $(pkg-config --libs --cflags SDL2)
et hop.
git is great because Linus did it, mercurial is better because he didn't.
- Edité par EnderRayquaza 14 novembre 2019 à 18:50:37
Installation SDL Linux.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
git is great because Linus did it, mercurial is better because he didn't.
git is great because Linus did it, mercurial is better because he didn't.
git is great because Linus did it, mercurial is better because he didn't.