# Programmation avec la SDL/Outils nécessaires

Vous avez sûrement envie de programmer tout de suite. Malheureusement, il va falloir un petit peu de patience avant de commencer votre premier programme avec la SDL. En effet, nous allons tout d'abord devoir installer la SDL. Pour cela, on aura besoin de :
* la SDL
* un IDE (il n'est pas obligatoire d'utiliser un IDE mais c'est tout de même bien plus simple) : dans ce livre nous utiliserons Code::Blocks mais rien n'empêche d'en utiliser un autre.

## Installation de la SDL sur Code::Blocks
### Installation de Code::Blocks

* Sur Linux (Ubuntu), rien de plus simple : Code::Blocks peut être installé depuis la logithèque ou bien avec la commande suivante :
* Pour Windows, voici la page de téléchargement officielle de Code::Blocks : www.codeblocks.org. Sur cette page, téléchargez codeblocks-12.11mingw-setup.exe ou bien codeblocks-12.11mingw-setup_user.exe si vous ne possédez pas les droits d'administrateur. Si vous n'êtes pas sûr, téléchargez codeblocks-12.11mingw-setup.exe. Il ne vous reste plus qu'à suivre la procédure d'installation habituelle.

### Installation de la SDL

Pour télécharger la SDL 2.0, rendez vous sur ce site : Site du zéro. Téléchargez alors le template SDL 2.0. Celui-ci va nous faciliter la vie.
* En effet, pour ceux qui sont sur Linux, décompressez le dossier dans votre dossier personnel. Après cela, rendez vous sur le terminal et tapez les commandes suivantes :
* Pour Windows, c'est encore plus simple : il suffit de fusionner le dossier Share que vous avez obtenu en décompressant le dossier que vous avez télécharger avec le dossier Share de Code::Blocks qui se trouvera sûrement à l'adresse C:\Program Files (x86)\CodeBlocks\share.

## Création d'un projet pour la SDL 2.0

Maintenant que nous avons installé la SDL, voyons comment créer un projet pour celle-ci.
* En arrivant sur la page d'accueil de Code::Blocks, cliquez sur Create a new project ou bien allez dans File -> New -> Project.
* Dans la fenêtre qui apparaît, sélectionnez SDL 2.0 project.
* Après avoir cliqué une première fois sur Next, vous devriez arriver sur la fenêtre ci-contre. Dans celle-ci, vous pourrez renseigner :
** Le nom de votre projet.
** Le dossier dans lequel il sera enregistré (en cliquant sur [...], vous pourrez sélectionner un dossier).
** Le nom du fichier CodeBlocksProject (.cbp) qui contiendra votre projet. Le nom du dossier qui contiendra le .cbp sera également celui que vous aurez renseigné dans ce champ.
** Le nom entier du fichier .cbp : ne vous en occupez pas.
* Après avoir cliqué une nouvelle fois sur Next, vous arrivez à la dernière étape de la création de votre projet. Normalement, les valeurs par défaut conviennent. Cependant, vérifiez que :
** Si vous utilisez Linux, le compilateur (compiler en anglais) soit GNU GCC Compiler ou, si vous êtes sur Windows que ce soit MinGW.
** Les cases "Debug" configuration et "Release" configuration soient cochées, à moins que vous soyez sûr(e) de ce que vous faites.
* Lorsque vous aurez cliqué sur Finish il ne vous restera plus qu'à compiler votre premier programme avec la SDL.

## Compilation

Le projet par défaut de Code::Blocks comporte déjà un fichier main.cpp dans lequel se trouve un code en C++. Celui-ci permet d'ouvrir une fenêtre et de la fermer. Ce paragraphe ne traitera pas du code en lui même mais de sa compilation qui est, pour les habitués de Code::Blocks, identique à la compilation d'un code en C. Certains seront peut-être désagréablement surpris de voir un code en C++ alors que ce livre a pour objet la programmation en C avec la SDL. En fait, nous verrons par la suite qu'il est tout à fait possible de coder en C dans le main.cpp.

### La barre d'outil de compilation

Si la barre d'outil du compilateur n'apparaît pas avec les autres barres d'outils, elle se trouve dans View -> Tollbar -> Compiler. Elle est composée de six éléments :
* Le bouton en forme d'engrenage permet de compiler le projet (Ctrl + F9).
* Le bouton Play permet de lancer le programme issu de la compilation (Ctrl F10).
* Le bouton mélangeant les deux précédents permet de compiler le projet puis de lancer le programme (F9).
* Le bouton suivant permet de compiler à nouveau tout le projet (Ctrl F11)
* La croix permet de tout annuler.
* Le menu déroulant Build target permet de choisir le mode de compilation : Debug ou Release.
À présent, compilez le projet sans modifier le code. Si l'installation a correctement fonctionné, une fenêtre devrait apparaître avec à l'intérieur le logo de Code::Blocks. Il va maintenant vous être possible de coder avec la SDL.