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 projetProprié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 liensGénéral : modifiez le champ Répertoires de bibliothèques supplémentaires et ajoutez C:\allegro\lib
  • éditeur de liensentré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 configurationDé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 liensGénéral : modifiez le champ Répertoires de bibliothèques supplémentaires et ajoutez C:\allegro\lib
  • éditeur de liensentré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 :

#define ALLEGRO_STATICLINK
#include <allegro5/allegro.h>

Hello World

Créez un fichier main.c et collez ce code :

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;
}

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