Installer Allegro

Un article de Mangue.org, l'encyclopéde libre.


Avant d'utiliser Allegro dans ses propres programmes, il faut bien évidemment l'installer. Cette procédure peut paraître compliquée pour le débutant, mais est en fait à la portée de tout le monde.


Sommaire

Quel type d'installation ?

A l'origine, pour installer Allegro, il n'existait qu'une solution : le compiler. Or, ce mode de fonctionnement s'avére relativement long, surtout s'il survient des erreurs bizarres pendant la procédure. Donc, certaines personnes bien astucieuses mirent à disposition des packages qui installent automatiquement Allegro sur certains compilateurs. Mais il reste tout de même possible de compiler Allegro soi-même. Surtout que ces packages n'existent que sous Windows. Donc pour compiler nos jeux sous un autre système, nous serons obligé d'en passer par la compilation d'Allegro.


Installer à partir des sources

Pour installer Allegro à partir des sources, il nous faut bien évidemment commencer par télécharger les sources sur le site officiel d'Allegro à cette adresse (http://alleg.sourceforge.net/wip.html). Puis, décompresser l'archive téléchargée dans un dossier, dont le choix n'est pas important. Ensuite, il reste encore à compiler Allegro en lui même. Les directives pour réaliser cette tâche sont différentes suivant le compilateur que vous souhaitez utiliser, c'est pourquoi nous n'allons pas les détailler ici. Par contre, ces consignes se situent dans le sous-dossier "docs/built" du répertoire Allegro, dans le fichier portant le nom du-dit compilateur.

Voici les noms des fichiers qui correspondent à chaque compilateur :

  • BeOS : beos.txt
  • Linux/gcc : linux.txt
  • MacOS : macos.txt
  • QNX : qnx.txt
  • Unix/gcc : unix.txt
  • Windows/Borland C++ Builder : bcc32.txt
  • Windows/DJGPP : djgpp.txt
  • Windows/Visual C++ : msvc.txt
  • Windows/MingW32/Cygwin : mingw32.txt
  • Windows/WatcomC : watcom.txt


Compilation d'Allegro pour Dev-C++

Pour mettre en pratique le chapitre précédent traitant de la compilation d'Allegro, nous allons compiler la librairie Allegro pour pouvoir l'utiliser avec le compilateur gratuit Dev-C++ utilisant le compilateur MingW32, portage sous Windows des outils GNU. Dev-C++ est téléchargeable à cette adresse : http://www.bloodshed.net/dev/devcpp.html.

Tout d'abord, nous allons télécharger tous les packetages dont nous aurons besoin, pour ainsi ne manquer de rien lors de la manipulation. Nous allons télécharger :

Ainsi paré, nous allons pouvoir commencer.

La première chose à faire est d'installer Dev-C++, par exemple dans le répertoire C:\Program Files\Dev-Cpp. Ensuite, il nous faut décompresser l'archive contenant Allegro dans ce même répertoire, ainsi que l'archive dx70_mgw.zip.

L'arborescence du disque après décompression des archives

Voilà maintenant la phase de compilation. Il nous faut ouvrir une fenêtre de console Dos, puis ajouter le répertoire Bin de Dev-C++ au path grâce à la commande 'PATH C:\Progra~1\Dev-Cpp\Bin;%PATH%' (attention à ne pas mettre d'espaces dans le chemin de Dev-C++), puis créer la variable MINGDIR ainsi 'set MINGDIR=C:\Progra~1\Dev-Cpp', tout cela bien entendu si C:\Progra~1\Dev-Cpp est le chemin du répertoire de Dev-C++.

L'ajout des variables globales

Ensuite nous allons nous déplacer dans le répertoire d'allegro par la commande 'cd C:\progra~1\dev-Cpp\allegro' puis exécuter 'fix mingw32' pour convertir les fichiers d'allegro à ce compilateur. Il ne nous reste plus qu'à exécuter les commandes 'make' puis 'make install</a>' et allegro est installé.


Installer à partir d'un package

Pour installer Allegro à partir d'un package, il suffit de télécharger le package correspondant à votre compilateur sur le site adéquat, et de le décompresser dans le répertoire du-dit compilateur. Il est à noter que ces packages ne sont pas officiels, il en existe donc plusieurs, de par le web, téléchargeables à partir de sites persos. Ce n'est donc pas la peine d'en chercher sur le site officiel Allegro. De plus, certains de ces packages ne contiennent pas la documentation Allegro, ainsi que divers utilitaires fournis avec la librairie. Voici un lien où il est possible de télécharger des packages avec documentation et utilitaires pour les compilateurs Dev-C++, Visual C/C++ et Borland C/C++ : http://www.galileo.spaceports.com/~springs/. Une fois le fichier téléchargé, il suffit en général de le décompresser, et d'effectuer l'installation en double-cliquant sur le fichier d'installation. Sinon, il suffit de suivre les informations du fichier Readme.

Remarque
Dev-C++ est un compilateur C++ sous windows gratuit. Il est téléchargeable sur cette page : http://www.bloodshed.net/devcpp.html.


Utiliser Allegro avec un compilateur

Danger
Si vous utilisez Allegro en mode dynamic (avec la Dll), n'oubliez pas de mettre la Dll alleg40.dll dans le répertoire C:\Windows\System32 de votre ordinateur, ainsi que de livrer cette Dll avec votre programme.

L'installation finie, le plus gros du travail est fait (si l'on excepte bien sûr l'apprentissage :) ). Pour utiliser Allegro dans nos programmes, il suffit d'insérer #include <allegro.h> en début de fichier, et d'ajouter le fichier alleg.lib dans les options du linker. Pour cela, la manipulation est différente suivant le compilateur :

Si vous utilisez DJGPP : sous rhide, il faut aller dans Options->Libraries et taper "alleg" dans la première ligne, sans oublier de cocher la case sur la gauche.

Si vous utilisez Dev-C++ : allez dans Project->Project Options et ajoutez "liballeg.a" dans le champ Further object files or linker options (cf. image) :

Ajout de la bibliothéque dans Dev-C++ 4

Si vous utilisez Visual C++ : allez dans Projects->Settings->Onglet Link et ajoutez "alleg.lib" dans le champ Object/library modules (cf image) :

Ajout de la bibliothéque dans VC++ 6

Remarque
Dans Visual C++, vous devez créer un projet de type "Win32 Application", et non un projet de type "Win32 Console Application".

end_of_main()

Dans les programmes, il ne faut pas oublier d'appeler la macro END_OF_MAIN() juste après la fonction main() ainsi :

int main()
{
	...
}
END_OF_MAIN();

Cela nous permet d'utiliser la fonction main classique du C dans un programme Windows 32 bits.

Outils personels