Previous Next Table of Contents

4. Informations complémentaires

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.

4.1 Installation de modules

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.

Démarche générale

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

Un exemple plus développé

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/).

4.2 Comment installer un module sans avoir les droits root ?

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


Previous Next Table of Contents