Installation de Widelands build9-half sur Ubuntu Breezy🔗

Posted by Médéric Ribreux 🗓 In blog/ Debian/

#debian #games

Introduction

Widelands est un port libre du jeu “The Settlers”. Il est assez bien fichu. Toutefois, la version officielle de Ubuntu est le build9 qui date de janvier 2005.

Le build9-half est sorti début décembre 2005 et il est bon de voir ce qu’il y a dedans. Nous sortons donc du paquet Ubuntu pour revenir à la bonne vieille compilation à la main que nous adorons et qui nous permet de profiter de toutes les dernières modifications…

Dépendances

Widelands a besoin des librairies suivantes pour pouvoir être compilé: - SDL - SDL_mixer >= 1.2.6 - SDL_image - SDL_net - SDL_ttf >= 2.0.0 - gettext (look at FAQ if you have problems with -lintl) - libpng - zlib

En gros, pour être sûr d’avoir tout, la commande suivante peut être lancée:

sudo apt-get install libsdl1.2-dev libsdl-image1.2 libsdl-image1.2-dev \
libsdl-mixer1.2 libsdl-mixer1.2-dev libsdl-net1.2 libsdl-net1.2-dev \
libsdl-ttf2.0 libsdl-ttf2.0-dev gettext zlib1g zlib1g-dev libpng12-0 \
libpng12-dev

Attention à bien préciser la version de libsdl-ttf: en version 1.2, la compilation plante.

Téléchargement

Récupérer les sources à l’emplacement suivant: Sources de Widelands build9-half sur sourceforge

Compilation

Après avoir déchargé l’archive dans un répertoire, on constate qu’il n’y a pas de ./configure et rien pour le générer. Conclusion, widelands n’utilise pas les outils GNU pour préparer la compilation. Ainsi, il va falloir se modifier le Makefile à la main pour le faire. A priori, ce travail est assez limité et on peut, du moins pour la compilation, lancer un simple make.

Sur Ubuntu, la compilation échoue avec le message suivant:

/usr/bin/ld: ne peut trouver -lintl

Comme indiqué dans la FAQ de widelands [2], cela vient du fait que sur Ubuntu, il n’existe pas de librairie intl. Il faut donc indiquer dans le Makefile ou dans le Makefile.local qu’on désire utiliser la libc pour intl. Pour cela, la commande suivante créé un fichier Makefile.local qui va bien:

echo "IMPLICIT_LIBINTL:=yes" > ./Makefile.local

Ensuite, un simple: make suffira pour lancer la compilation (à priori pas trop longue sur une machine moderne).

Si la commande n’échoue pas, on peut lancer directement widelands sans l’installer.

Installation sur le système

Un coup d’oeil dans le Makefile nous indique qu’il n’y a pas de directive “install”. Il faut donc se débrouiller pour installer le jeu à la main.

Références

  1. Le site officiel de Widelands.
  2. FAQ de widelands sur la lib intl.