I-A. Installation d'une bibliothèque SDL sous DevC++

Dans ce tutoriel, vous allez apprendre à installer des bibliothèques SDL sous DevC++.

I-A-1. Installation de SDL_image

Nous allons apprendre, dans ce tutoriel, à installer la bibliothèque SDL_image qui permet de charger des fichiers autre que BMP.
Si vous savez comment installer SDL_image, alors vous savez comment installer beaucoup des bibliothèques SDL existantes (c'est le cas par exemple de SDL_TTF et de SDL_mixer).

SDL_image est téléchargeable depuis ici

Lorsque vous récupérez une nouvelle extension SDL (SDL_TTF, SDL_mixer, SDL_image, etc...), soyez sûr d'avoir, au préalable, installer la dernière version de SDL.
Les dernières versions des extensions SDL n'aiment pas beaucoup les vielles versions de SDL.
Si vous ne le faîtes pas, DevC++ compilera le programme mais le programme pourra rater à l'exécution.

Allez sur la page de téléchargement de SDL_image (voir lien plus haut), descendez à la section Binary et téléchargez la version indiqué sur l'image ci-dessous :

image SDL

Chaque bibliothèque SDL possède trois parties essentielles :

  • Les fichiers d'entête (*.h)
  • Le fichier lib
  • Le(s) fichier(s) dll

Ouvrez le fichier d'archive, il devrait contenir un dossier.
Ouvrez ce dossier, il devrait contenir deux sous-dossiers.

Premièrement, ouvrez le sous-dossier include et extrayez le fichier d'entête (*.h) dans le sous-dossier SDL dans le dossier include de DevC++.
Ce dossier devrait être C:\Dev-Cpp\include\SDL.

Ensuite, extrayez le fichier lib, contenu dans le sous-dossier lib, dans le dossier lib de DevC++.
Ce dossier devrait être C:\Dev-Cpp\lib.

Extrayez ensuite les fichier dll se trouvant dans le sous-dossier lib de l'archive dans le dossier bin de DevC++.
Ce dossier devrait être C:\Dev-Cpp\bin.

Enfin extrayez les fichiers dll dans C:\WINDOWS\SYSTEM32.
Maintenant ouvrez votre projet SDL et allez dans les options de projet (project options)

image SDL

Dans l'onglet Parameters, copiez :

 
Sélectionnez

				-lSDL_image
				

Dans le linker, après "-lmingw32 -lSDLmain -lSDL".

image SDL

Pour utiliser SDL_image, assurez-vous de bien inclure le fichier d'entête :

 
Sélectionnez

				#include "SDL/SDL_image.h"
				

Maintenant, vous pouvez utiliser les fonctions de SDL_image.
La première fonction que vous devez apprendre est IMG_Load().
Vous en avez un exemple d'utilisation dans le Chapitre V (Transparence) avec la fonction load_image() que nous implémentons.

Comme vous pouvez le voir, IMG_Load() fait la même chose que SDL_LoadBMP(), mais il y a quand même une énorme différence :
IMG_Load() peut charger les images de type BMP, GIF, JPEG, LBM, PCX, PNM, TGA, TIFF, XCF, XPM, XV et PNG contrairement à SDL_LoadBMP() qui ne peut que charger les fichier BMP.

I-A-2. Installation de SDL_TTF

L'installation de SDL_TTF se déroule exactement de la même façon que l'installation de SDL_image.
Les seules différences se situes dans le renseignement du Linker dans les options du projet et dans l'inclusion du fichier d'entête.
Dans le linker, vous devez mettre

 
Sélectionnez

				-lSDL_ttf
				

Et dans votre fichier, vous devez inclure :

 
Sélectionnez

				#include "SDL/SDL_ttf.h"
				

I-A-3. Installation de SDL_mixer

De même, vous devez linker

 
Sélectionnez

				-lSDL_mixer
				

Et vous devez inclure :

 
Sélectionnez

				#include "SDL/SDL_mixer.h"
				

I-A-4. Installation de SDL_gfx

Tout d'abord télécharger SDL_gfx ici
Dézipez l'archive, puis copier tous les .c et .h dans Other Builds/
Dézipez l'archive Dev-Cpp.zip. Vous devriez maintenant avoir un SDL_gfx.dev et tous les .h et .c

Double cliquez sur le .dev (cela ouvre Dev-C++).
Compilez le projet. Vous avez maintenant le dll, et le .a

Copier les .h dans C:\Dev-Cpp\SDL-1.2.12\include\SDL
Copier le .a dans C:\Dev-Cpp\SDL-1.2.12\lib
Enfin, copier le .dll dans C:\WINDOWS\system32

Dans Dev-C++ : Option/Options du compilateur :
Ajouter -lSDL_gfx dans l'appel de l'éditeur de lien.

Vous pouvez maintenant developper en utilisant #include "SDL_framerate.h" par exemple.

Remerciements

Je remercie djfrancky pour sa contribution sur l'installation de SDL_gfx.

Liens