Je travaille actuellement sur ce qui devrait devenir l'ebuild officiel de mapserver-4.6.1 pour la distribution Gentoo Linux (cf. https://bugs.gentoo.org/show_bug.cgi?id=69417 [1] pour de plus amples informations sur l'état d'avancement du développement du dit ebuild, en anglais uniquement). Il me reste cependant un chemin relativement long avant de pouvoir l'ajouter au portage officiel de Gentoo.
Cependant tout les heureux utilisateurs francophones de Gentoo sont activement invité à utiliser et tester cet ebuild puis à poster leurs commentaires sur le bugzilla de Gentoo (cf. bugs.gentoo.org [2]).
Grâce à cet ebuild nommé mapserver-4.6.1.ebuild, vous pourrez utiliser pleinement l'ensemble des fonctionnalités de mapserver quelque soit votre language de programmation préféré (excepté le support mono pour lequel j'aurais bien besoin d'un coup de main...). En effet, cet ebuild est capable de vous installer le support mapscript pour les languages de programmations suivants : perl, python, ruby, tcl, java et php. Concernant le support de ce dernier, vous aurez sans doute remarqué sur le bugzilla de gentoo qu'il est question d'un patch pour mapserver (à partir du commentaite #40 [3]). En effet je me suis permis de modifier quelque fichiers afin que l'installation en une seule passe (dans le sens où un seul ./configure && make && make install sera necessaire) permette d'installer le support à la fois pour php4 et pour php5. Ainsi quelque soit la distribution GNU/Linux que vous utilisiez, si les deux versions de php sont installées vous serez capable de compiler les deux versions de l'extension mapscript.
Une fois le patch appliqué de la façon suivante :
wget -O mapserver-4.6.1_phps.patch "https://bugs.gentoo.org/attachment.cgi?id=70849";
cd /${repertoire-racine-des-sources-de-mapserver}/;
cp -r mapscript/php3 mapscript/php5;
patch -p0 < /${le-chemin-vers-mon-patch}/mapserver-4.6.1_phps.patch
il vous faudra spécifier où se trouve les headers de php (/usr/lib/php4/
par exemple pour la version 4 sur gentoo). Là où vous utilisiez jadis l'option --with-php
, vous utiliserez maintenant les options : --with-php5
et --with-php4
de la même façon.
Vous noterez qu'il est necessaire de copier entièrement le répertoire contenant les sources du support mapscript pour php (mapscript/php3
), ceci est du au fait que j'ai rencontré un problème à la compilation avec la version 4.4.0-pl1-gentoo de php, concernant la définition (dans les headers donc) de la fonction php_header qui n'acceptait aucun argument tandis que php_mapscript.c en utilisait un.
Cependant étant donné la nature des fichiers que je me suis permis de modifier, il vous sera necessaire, avant de lancer la commande ./configure avec les options --with-php4
et/ou --with-php5
, d'utiliser la commande autoreconf
afin que les modifications effectués soient effectivement prisent en compte (cf autotools [4] pour de plus amples informations). Une fois ceci fait, vous pouvez suivre la procédure habitielle comme décrit ici [5].