Dans cette section se trouvent - pour l'instant - des informations pouvant être utiles aux personnes désirant installer des modules. D'autres informations plus spécifiques pourront y être ajoutées, sur demande.
L'introduction des modules et du langage d'extension XS a
grandement facilité la vie des programmeurs ainsi que des
utilisateurs. Un mécanisme (MakeMaker
) a été développé afin de rendre
l'installation de nouveau modules la plus simple possible. J'en
parlerai ici du point de vue de la personne qui doit installer un
nouveau module. Ce que je décris est valable surtout pour les systèmes
gérant les librairies dynamiques. La marche à suivre pour les autres
systèmes (librairies statiques) est presque identique mais impose de
recompiler une nouvelle version de l'interpréteur perl
.
Voyons dans un premier temps la démarche générale, adaptée pour tous les modules simples. Après avoir détarré l'archive du module et être allé dans le répertoire ainsi créé, il suffit de procéder ainsi:
% less README
% less INSTALL
% perl Makefile.PL
% make
% make test
% make install
Prenons l'exemple du module Curses qui procure des routines permettant de gérer la gestion d'un écran en mode texte. Il ne vient pas avec la distribution standard de perl, il faut donc aller le récupérer sur un des sites CPAN ; il se trouve dans la catégorie User Interfaces.
Il faut ensuite détarrer le fichier archive rapatrié dans un répertoire quelconque. Rappelons aux utilisateurs de Linux qu'il est déconseillé de compiler quoi que ce soit en étant root : mieux vaut le faire en tant qu'utilisateur normal, puis passer root pour faire l'installation uniquement.
Dans le répertoire Curses-1.0
ainsi créé se trouvent plusieurs
fichiers et répertoires dont nous allons voir les plus importants.
En premier lieu, bien lire les fichiers README
et
INSTALL
. La marche à suivre y est indiquée. Dans le cas de
Curses qui est un paquetage variant beaucoup d'une machine à
l'autre, il faut copier à la main le fichier du répertoire hints
correspondant à son architecture dans le fichier c-config.h
et
éditer le fichier Makefile.PL
pour décommenter les lignes
relatives à son système d'exploitation.
Je vous rassure, Curses fait partie des modules impliquant le plus de manipulations. Dans la plupart des cas, comme par exemple pour GD ou Msql, il suffit d'avoir auparavant installé les librairies adéquates sur son système si elles n'y étaint pas déjà.
Il faut ensuite lancer la commande
% perl
Makefile.PL
qui va faire un certain nombre de tests
et créer le fichier Makefile
. Un simple make
doit ensuite
suffire à construire l'extension.
% make test
lance une série de tests afin de vérifier que le module
est correctement compilé. Il suffit enfin de passer root pour faire le
% make install
qui ira installer les fichiers nécessaires dans les
bons répertoires (généralement,
/usr/local/lib/perl5/site_perl/
ou
/usr/lib/perl5/site_perl/
).
Les modules sont installés par défaut dans le répertoire standard des
librairies de perl. Si vous avez besoin d'un module mais que vous
n'avez pas les droits sur l'arborescence /usr/local
, il est
toujours possible d'installer des modules dans votre répertoire
personnel, en précisant pour cela le répertoire adéquat lors de la
génération du fichier Makefile
:
% perl Makefile.PL PREFIX=~
ce qui va installer les modules dans le répertoire $HOME/lib
.
Pour y accéder, il suffit de commencer le script par:
#!/usr/local/bin/perl
use lib "$ENV{HOME}/lib";
La documentation complète des attributs d'installation pouvant être fixés est disponible par la commande:
% perldoc ExtUtils::MakeMaker