Outils pour utilisateurs

Outils du site


allegro:install_msvs10

Traduction modifiée de [[http://wiki.allegro.cc/index.php?title=Windows,_Visual_Studio_2010_and_Allegro_5]] ===== Installez MSVS 2010 ===== La version express de Microsoft Visual Studio 2010 est distribuée gratuitement, suivez ce lien pour l'installer : http://msdn.microsoft.com/fr-fr/gg699327 ===== Installez Allegro ===== Sur cette page, récupérez la dernière version précompilé avec MSVC10 (c'est plus simple pour nous) d'Allegro : http://www.allegro.cc/files/ \\ Pendant l'écriture de cet article, la version est 5.0.7. Extrayez l'archive et placez les dossiers **bin**, **include** et **lib** dans le dossier **C:\allegro\** (créez le si nécessaire). Explications sur le contenu de chaque dossier : * **bin** contient les DLLs pour linker votre jeu avec Allegro dynamiquement. * **include** contient les headers avec les definitions de types, structures et fonctions à inclure dans vos sources. * **lib** Contient les archives d'objets compilés pour linker votre jeu avec Allegro statiquement. ===== Créer un projet ===== Démarrez MSVS 2010 et créer un nouveau projet de type **projet vide**.\\ Créez au moins un fichier **main.c** sinon la fenêtre de propriétés de votre projet sera incomplète. L'IDE vous crée le projet avec deux cibles : **Debug** et **Release** qu'il va falloir configurer : dans l'**Explorateur de solutions**, cliquez-droit sur votre **projet**->**Propriétés**. On distingue maintenant 2 types de compilation (ou plutôt d'édition des liens(linking)) : * **Dynamique**, Votre exécutable sera plus léger mais il faut prendre soin de distribuer les DLLs avec votre jeu * **Statique**, Allegro est directement intégré dans l'exécutable de votre jeu, celui-ci sera plus gros à vous de choisir la meilleur manière de distribuer votre jeu ! ==== Dynamique ==== * **C/C++** -> **Général** : modifiez le champ //Autre Dossier Include// et ajoutez **C:\allegro\include** * **éditeur de liens** -> **Général** : modifiez le champ //Répertoires de bibliothèques supplémentaires// et ajoutez **C:\allegro\lib** * **éditeur de liens** -> **entrée** : Modifiez le champ //Dépendances supplémentaires// et ajoutez (un par ligne) **shlwapi.lib\\ psapi.lib\\ winmm.lib\\ opengl32.lib\\ Gdiplus.lib**\\ Pour la cible **Debug** : **allegro-5.0.7-monolith-md-debug.lib**\\ Pour la cible **Release** : **allegro-5.0.7-monolith-md.lib** * **Propriétés de configuration** -> **Débogage** : Modifiez le champ //Environnement// et ajoutez **PATH=c:\allegro\bin;%PATH%** ==== Statique ==== * **C/C++** -> **Général** : modifiez le champ //Autre Dossier Include// et ajoutez **C:\allegro\include** * **éditeur de liens** → **Général** : modifiez le champ //Répertoires de bibliothèques supplémentaires// et ajoutez **C:\allegro\lib** * **éditeur de liens** -> **entrée** : Modifiez le champ //Dépendances supplémentaires// et ajoutez (un par ligne) **shlwapi.lib\\ psapi.lib\\ winmm.lib\\ opengl32.lib\\ Gdiplus.lib**\\ Pour la cible **Debug** : **allegro-5.0.7-monolith-static-md-debug.lib**\\ Pour la cible **Release** : **allegro-5.0.7-monolith-static-md.lib** Attention ! avec la méthode statique, il faut définir ALLEGRO_STATICLINK avant d'inclure un header d'allegro : <code c> #define ALLEGRO_STATICLINK #include <allegro5/allegro.h> </code> ==== Hello World ==== Créez un fichier main.c et collez ce code : <file c main.c> #include <stdio.h> #include <allegro5/allegro.h> int main(int argc, char **argv) { ALLEGRO_DISPLAY *display = NULL; if(!al_init()) { fprintf(stderr, "failed to initialize allegro!\n"); return -1; } display = al_create_display(640, 480); if(!display) { fprintf(stderr, "failed to create display!\n"); return -1; } al_clear_to_color(al_map_rgb(0,0,0)); al_flip_display(); al_rest(10.0); al_destroy_display(display); return 0; } </file> Générez la solution (ou F7) et normalement ça compile et le programme se lance et il affiche une fenêtre noire. ===== Annexes ===== ==== Détails sur les libs ==== Dans le dossier **bin** et **lib** se trouvent des fichiers qui suivent une convention de nommage très précise : allegro[_module]-[version][-monolith][-static]-[mt|md][-debug].[lib|dll] * -static uniquement pour les .lib : signifie que le fichier inclus ne nécessite pas de DLL, utilisés pour la compilation statique. * -monolith : version tout-en-un d'allegro : le fichier contient les différents modules d'Allegro ainsi que les dépendances. * -mt,md : mt signifie que l'on link avec la libc en static (option /MT), évite d'imposer l'installation de vcredist_x86.exe, mais produit un binaire bien plus gros. * -debug : compile avec les informations de débogage. ==== Redistribution de votre jeu ==== Les jeux compilés avec MSVS on besoin des MSVC runtime libraries pour tourner.\\ Vos joueurs devront installer vcredist_x86.exe, disponible à cette adresse :\\ http://www.microsoft.com/download/en/details.aspx?id=5555

allegro/install_msvs10.txt · Dernière modification: 2014/06/10 14:24 par mrhide