Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Programmation > Environnements de développement > Installer la librairie SDL avec Dev-C++ > Lecture du tutoriel

Installer la librairie SDL avec Dev-C++

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteur : Christopher
Note : 19 / 20 (6 votes)
Visualisations : 17 640

Plus d'informations Plus d'informations
Vous êtes passionnez par les cours de C/C++, vous rêvez de programmer et d’utiliser des fenêtres, ou bien encore vous bavez à la vue de l'acronyme SDL... :p
C'est normale car la librairie graphique Simple DirectMedia Layer (SDL), permet de réaliser des programmes qui utilisent des images, des sons, vos périphériques comme la souris, le clavier et le lecteur de CD-ROM etc.

Mais avant de pouvoir l'utiliser afin de développer vos programmes, il va falloir l'installer. ;)

Ce mini tuto va donc vous aidez à installer la librairie SDL avec l'IDE DEV-C++. Pour vous faciliter la tâche, les fichiers à télécharger sont disponibles sur les liens ci-dessous:


Ha ! J'allais oublier! Avant d'installer la librairie SDL, il vous serais favorable de lire attentivement les cours sur le C/C++. ;)
Sommaire du tutoriel :
Icône du chapitre

Téléchargement de la librairie

Ouvrez le logiciel Dev-C++. Dans la barre d'outils, cliquez Outils >> Nouvelles versions/packages.

Image utilisateur


La fenêtre WebUpdate s'ouvre:

Image utilisateur


Dans la liste déroulante Select devpack server, sélectionnez devpacks.org community Devpacks comme ci-dessus, puis cliquez sur le bouton Check for Updates.

Le module de mise à jour de Dev-C++ va donc se connecter au serveur pour récupérer une liste de librairies, comme la capture d'écran ci-dessous:

Image utilisateur


Lorsque le module de mise à jour à fini de récupérer la liste des librairies, vous devez sélectionner la librairie SDL et pour finir cliquez sur le bouton Download Selected.

Image utilisateur


Le module de mise à jour télécharge donc la librairie SDL...

Lorsque la librairie SDL est entièrement téléchargée, un message vous averti, veuillez cliquez sur ok.

Image utilisateur


Pour finaliser l'installation de la librairie, l'Installation Wizard se lance, il ne vous reste plus qu'à accepter l'installation et ses formalités en cliquant sur Next.

Téléchargement de la DLL

Vous vous dites, Comment ça une DLL ? On vient juste d'installer la librairie ! :colere:

Oui, oui c'est vrai ! Mais il vous faut encore une DLL. La DLL de la librairie SDL: SDL.dll.
Ca fait beaucoup de SD... DL... LL...SD... C'est vrai. :p

C'est quoi une DLL ??? DLL est l'acronyme de Dynamic Link Library (Bibliothèque de liens dynamiques), elle se trouve sous forme de fichier *.dll. Une DLL, c'est donc un fichier contenant une collection de fonctions conçu pour un langage de programmation.

Pour en revenir à notre DLL, vous devez pour commencer, télécharger le fichier Zip nommé SDL-1.2.9-win32.zip pour Windows.

Bien Sûre le fichier existe en fonction du système d'exploitation sur le quel vous travaillez. ;)

Vous trouverez donc se fichier sur le site officiel de Simple DirectMedia Layer dans le sous menu Runtime Libraries: http://www.libsdl.org/download-1.2.php

Lorsque que vous avez récupéré le fichier compressé DL-1.2.9-win32.zip, ouvrez le.
Vous voyez dans se point Zip un fichier README-SDL.txt, et un autre fichier SDL.dll. Miracle ! :p J'exagère c'est vrai ! Le voila notre fichier DLL.

Image utilisateur


Se fichier SDL.dll va vous être très utile. Car pour chaque Projet qui utilisera la librairie SDL, il faudra copier se fichier dans le dossier de votre projet, car sinon, il est impossible de faire fonctionner votre programme ! ;)

Tester l'installation

Création du projet



Pour tester votre installation de la librairie, créez un nouveau projet dans Dev-C++ : Fichier >> Nouveau >> Projet...

Sélectionnez Empty project, cochez Projet C et donnez lui un nom comme Test SDL, par exemple.

Image utilisateur


Puis cliquez sur le bouton Ok. Dev-C++ vous demande d'enregistrer le nouveau projet. Enregistrez le dans un dossier qui lui est approprié. Par exemple dans un dossier nommé Test SDL.

Lorsque votre nouveau projet est crée, faite un clique droit sur le projet Test SDL, et cliquez sur nouveau fichier source.

Image utilisateur


Enregistrez se nouveau fichier source dans le dossier de votre Projet, sous le nom de main.c.

Reste encore à paramétrer les options de votre projet.

Pour paramétrer les options, cliquez sur Projet dans la barre d'outils puis sur Options du Projet.

Image utilisateur


La fenêtre Options du Projet, s'ouvre donc !

Dans l'onglet Général, vous pouvez voir un certain nombre d'informations, comme le nom de votre projet, le nom de votre fichier de sortie, autrement dit votre point *.exe qui serra compilé par la suite, et même un cadre Icône ou vous pouvez choisir un icône pour votre point exe.


Pour notre petit test, il faut sélectionner Win32 GUI dans la liste Type, comme ci-dessous.

Image utilisateur


Ensuite sélectionnez l'onglet Paramètres.

Effectuez un copier/coller de la chaîne de caractères suivante -lmingw32 -lSDLmain -lSDL, dans le champ Editeur de liens de la fenêtre Options du Projet. Voir la capture ci-dessous:

Image utilisateur


Puis pour valider les options du projet, cliquez sur le bouton Ok.

Il ne vous reste plus qu'à écrire un petit bout de programme pour tester votre installation.
Bah oui, mais quoi ??? o_O
Pour vous éviter de trop chercher, je vous donne un petit bout de programme ci-dessous. Faite un copier/coller du petit code ci-dessous dans votre fichier main.c.

Code : C
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdlib.h>  
#include <SDL/SDL.h> // Librairie SDL
 
int main( int argc, char *argv[ ] )
{
    SDL_Surface *screen; 
    
    if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
    {
        printf( "Impossible d'initialiser SDL:  %s\n", SDL_GetError( ) );
        exit( 1 );
    }
 
    atexit( SDL_Quit ); 
    screen = SDL_SetVideoMode( 640, 480, 16, SDL_HWSURFACE );
 
    if( screen == NULL )
    {
        printf( "Impossible d'initialiser le mode vidéo: %s\n", SDL_GetError( ) );
        exit( 1 );
    }   
 
    SDL_Delay( 3000 );
 
    return 0;
}


Etude du programme



Maintenant, comme disait Napoléon: Ca se Corse !!! ;)

Petite citation d'un de mes anciens proff...


Les directives de Préprocesseur



Code : C
1
2
#include <stdlib.h>  
#include <SDL/SDL.h>


Ces deux premières lignes sont les directives de préprocesseur. Elles servent donc a inclure les fichiers stdlib.h (comme d'habitude) et SDL/SDL.h qui se situent dans le dossier où est installé DEV-C++.

Vous avez remarqué, sans doute, que #include <SDL/SDL.h> était une nouvelle directive de préprocesseur. :o

Cette directive de préprocesseur, va oui Mesdames et Monsieurs, inclure la librairie SDL à notre programme. ;)

Quelques fonctions SDL



On crée une variable de type pointeur, qui nous reservira par la suite...

Code : C
1
SDL_Surface *screen;


Puis vient la suite du programme. ;)

Code : C
1
2
3
4
5
if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
    {
        printf( "Impossible d'initialiser SDL:  %s\n", SDL_GetError( ) );
        exit( 1 );
    }


On charge dynamiquement puis on initialise la librairie SDL grâce à la fonction SDL_Init(), et ici on choisi le mode vidéo de la librairie avec SDL_INIT_VIDEO.

Si la fonction SDL_Init() est inférieure à 0, c'est que l'initialisation n'a pas fonctionnée. On affiche donc qu'il est impossible d'initialiser la librairie avec la fonction printf(), et on affiche l'erreur, grâce à la fonction SDL_GetError().

Si le programme ne se déroule pas normalement, la fonction atexit(), éxécute la fonction SDL_Quit, se qui ferme la librairie SDL.

Code : C
1
atexit( SDL_Quit );


Si l'initialisation c'est déroulée correctement, on initialise le mode vidéo de la librairie, puis on créer une fenêtre (et oui c'est trop cool :D ), de dimension 640x480 pixels, et de profondeur 16 pixels, avec la ligne de code ci-dessous:

Code : C
1
screen = SDL_SetVideoMode( 640, 480, 16, SDL_HWSURFACE );


Il y a encore une dernière condition avec if, pour tester si l'initialisation du mode vidéo à bien fonctionnée:

Code : C
1
2
3
4
5
if( screen == NULL )
    {
        printf( "Impossible d'initialiser le mode vidéo: %s\n", SDL_GetError( ) );
        exit( 1 );
    }


Si l'initialisation du mode vidéo a échouée, la variable screen est NULL. On affiche donc un message d'erreur... Comme pour l'initialisation de la librairie ! ;)

Enfin si la librairie et le mode vidéo se sont initialisés sans problème, on affiche une fenêtre pendant 3 secondes avec la fonction SDL_Delay():

Code : C
1
SDL_Delay( 3000 );


:o Bah !!! tu avais dis 3 secondes, et ici il y a 3000 !!!

Pour le programme il faut exprimer le temps en milli-seconde. Hors, 1 seconde c'est égal à 1000 milli-secondes! Se qui explique pourquoi on écrit 3000 pour la fonction SDL_Delay(). ;)



Compilation et Exécution du programme



Il ne vous reste plus qu'à compiler et exécuter le programme, ;) en cliquant sur le bouton Compiler & Exécuter (F9).

Image utilisateur


Si le programme de test fonctionne correctement, une fenêtre devrait s'ouvrir pendant 3 secondes, puis se fermer toute seule, comme ci-dessous. o_O

Image utilisateur


C'est grand!!! o_O C'est noir, tout noir!!! o_O
Bah oui je sais! Mais bon! Il faut bien commencer par quelque chose. Et puis, la librairie SDL est installée et elle fonctionne !!! :D

Votre librairie SDL est maintenant installée et opérationnelle. :D Il ne vous reste plus qu’à suivre attentivement les cours de développement du site du zér0. ^^

Cependant pensez à ne pas oublier de configurer vos projets si vous utilisez la librairie SDL, et n'oubliez pas la directive de préprocesseur:

Code : C
1
#include <SDL/SDL.h>


Ainsi que l'initialisation de la librairie... ;)

Bonne continuation...
Retour en haut Retour en haut


Créé : le 22/02/2006 à 17:15:14
Modifié : le 22/08/2008 à 16:06:46
Avancement : 100%
Licence : Copie non autorisée

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 701 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0571s (0.0348s)