La SDL sous Ubuntu Linux
Fermé
yoyo91_19
-
21 oct. 2008 à 20:01
mamiemando Messages postés 33162 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 1 juillet 2024 - 22 oct. 2008 à 12:23
mamiemando Messages postés 33162 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 1 juillet 2024 - 22 oct. 2008 à 12:23
A voir également:
- La SDL sous Ubuntu Linux
- Iso linux ubuntu - Télécharger - Systèmes d'exploitation
- Ubuntu 32 bits - Télécharger - Systèmes d'exploitation
- Ubuntu 24.04 - Guide
- Linux mint - Télécharger - Systèmes d'exploitation
- Linux mint ou ubuntu - Guide
1 réponse
mamiemando
Messages postés
33162
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
1 juillet 2024
7 760
22 oct. 2008 à 12:23
22 oct. 2008 à 12:23
Au moment où tu compiles, il mentionner
- dans le chemin des includes (option -I de gcc/g++) le répertoire dans lequel sont placés les headers (fichiers .h et .hpp),
- dans les options de linkage le nom de la librairie (option -l, en enlevant l'extension et le préfixe "lib")
Par exemple, si tes headers sont dans /usr/include/SDL et que tu veuilles linker avec /usr/lib/libSDL-1.2.so.0 :
Dans ce cas particulier, g++ cherchant automatiquement dans /usr/include, tu peux sous-entendre le -I/usr/include/.
- Le -lSDL-1.2 (et les éventuelles autre libraires) ne servent qu'au moment ou tu crées l'exécutable. En d'autre termes, il ne faut pas le mettre quand tu compiles les modules (fichiers .o), sinon chacun d'eux sera lié à cette librairie et tu auras une définition multiple de symboles.
- Par contre l'option -I/répertoire/des/headers est nécessaire à chaque fois que tu appelles un header qui n'est pas dans un répertoire standard.
Si tu ne t'en sors pas, merci de nous reporter les messages d'erreurs de ton compilateur.
Bonne chance
- dans le chemin des includes (option -I de gcc/g++) le répertoire dans lequel sont placés les headers (fichiers .h et .hpp),
- dans les options de linkage le nom de la librairie (option -l, en enlevant l'extension et le préfixe "lib")
Par exemple, si tes headers sont dans /usr/include/SDL et que tu veuilles linker avec /usr/lib/libSDL-1.2.so.0 :
g++ -W -Wall -I/usr/include/ plop.c -lSDL-1.2
Dans ce cas particulier, g++ cherchant automatiquement dans /usr/include, tu peux sous-entendre le -I/usr/include/.
- Le -lSDL-1.2 (et les éventuelles autre libraires) ne servent qu'au moment ou tu crées l'exécutable. En d'autre termes, il ne faut pas le mettre quand tu compiles les modules (fichiers .o), sinon chacun d'eux sera lié à cette librairie et tu auras une définition multiple de symboles.
- Par contre l'option -I/répertoire/des/headers est nécessaire à chaque fois que tu appelles un header qui n'est pas dans un répertoire standard.
Si tu ne t'en sors pas, merci de nous reporter les messages d'erreurs de ton compilateur.
Bonne chance