NOM
perlmodinstall - Installation des modules CPAN
DESCRIPTION
Un module peut être vu comme une unité de base de code Perl réutilisable ; voyez perlmod pour plus de détails. Dès lors que quelqu'un crée un ensemble de code Perl dont il pense que la communauté pourra y trouver une utilité, il s'inscrit comme développeur Perl à l'adresse http://www.perl.com/CPAN/modules/04pause.html de sorte qu'il puisse exporter ses lignes de code vers le CPAN. LE CPAN est le «Réseau Complet d'Archives Perl» (Comprehensive Perl Archive Network) qui peut être consulté à l'adresse http://www.perl.com/CPAN/. (Ce sigle ne sera pas traduit dans ce document, puisqu'il concerne bien souvent des URL)
La présente documentation a été écrite à l'intention de quiconque désire rapatrier sur sa machine des modules du CPAN pour les y installer.
PRÉAMBULE
Vous venez donc de rapatrier un fichier dont l'extension est .tar.gz (ou parfois .zip) dont vous savez qu'il contient un beau module avec de vrais morceaux de code... Il vous faudra franchir les quatres étapes suivantes pour l'installer :
- DÉCOMPRIMER le fichier
- DÉBALLER le fichier dans un répertoire
- CONSTRUIRE le module (parfois ce n'est pas nécessaire)
- INSTALLER le module.
Voici comment faire chacune de ces étapes pour divers systèmes d'exploitation. Attention, ce texte ne vous dispense pas de lire les fichiers README et INSTALL qui pourraient être livrés avec le module, dans lesquels peuvent se trouver des informations plus spécifiques au module considéré.
Sachez aussi que ces instructions ont été prévues pour une installation dans le catalogue de modules Perl de votre système, mais vous pouvez installer des modules dans n'importe quel répertoire. Par exemple s'il est écrit ici perl Makefile.PL
, vous pouvez remplacer cette commande par perl Makefile.PL PREFIX=/mon/repertoire_perl
, ce qui aura pour effet l'installation des modules dans le répertoire /mon/repertoire_perl
. Vous pourrez alors utiliser les modules à partir de vos programmes Perl avec la commande use lib"/mon/repertoire_perl/lib/site_perl";
or parfois encore plus simplement use"/mon/repertoire_perl";
.
Si vous êtes sur Unix,
Vous pouvez utiliser le module CPAN de Andreas Koenig's (http://www.perl.com/CPAN/modules/by-module/CPAN) pour exécuter automatiquement les étapes suivantes, de DECOMPRIMER à INSTALLER.
A. DÉCOMPRIMER
Decomprimez le fichier avec la commande
gzip -d votremodule.tar.gz
On peut obtenir gzip à l'adresse ftp://prep.ai.mit.edu/pub/gnu.
Mais vous pouvez aussi combiner cette étape avec la suivante pour économiser de l'espace sur votre disque :
gzip -dc votremodule.tar.gz | tar -xof -
B. DÉBALLER le module
Déballez le fichier résultat avec la commande
tar -xof votremodule.tar
C. CONSTRUIRE le module
Allez dans le répertoire nouvellement créé et écrivez :
perl Makefile.PL make make test
D. INSTALLER le module
Vous êtes encore dans le répertoire nouvellement créé ; exécutez alors :
make install
Assurez-vous que vous avez les permissions requises pour pouvoir installer le module dans le répertoire correspondant à la bibliothèque Perl 5. Bien souvent, il vous faudra être root.
Voilà tout ce que vous avez à faire sur un système Unix avec liens dynamiques. La plupart des systèmes Unix possèdent les liens dynamiques --- si ce n'est pas le cas du vôtre, ou si pour une quelconque raison votre perl est à liens statiques et si le module nécessite une compilation, vous devrez construire un nouveau binaire Perl incluant le module. Là encore, vous devrez être root.
Si vous utilisez Windows 95 ou NT avec le portage ActiveState de Perl
A. DÉCOMPRIMER le module
Vous pouvez utiliser Winzip (http://www.winzip.com) pour décomprimer et déballer les modules.
B. DÉBALLER le module
WinZip l'aura déjà fait !
C. CONSTRUIRE le module
Le module doit-il être compilé ? (contient-il des fichiers avec les extensions suivantes : .xs, .c, .h, .y, .cc, .cxx, or .C ?) Si c'est le cas, c'et à vous de jouer ! Vous pouvez essayer de compiler le module vous-même si vous avez un compilateur de C, et en cas de succès, envoyer le code binaire résultat au CPAN, pour que d'autres puissent aussi l'utiliser. Si il n'y a a pas besoin de compiler, vous n'avez rien à faire pour cette étape.
D. INSTALLER le module
Copiez le module dans le répertoire lib de Perl. C'est l'un des répertoires que vous voyez en exécutant la commande :
perl -e 'print "@INC"'
Si vous utilisez Windows 95 ou NT avec la distribution de base de de Perl
A. DÉCOMPRIMER le module
Au moment de rapatrier le fichier, assurez-vous qu'il termine bien avec l'extension
.tar.gz
ou.zip
. Parfois, Windows enregistre les fichiers.tar.gz
sous la forme_tar.gz
, car les premières versions de Windows n'acceptaient pas plus d'un point dans les noms de fichiers.Vous pouvez utiliser Winzip (http://www.winzip.com) pour décomprimer et déballer les modules, mais vous pouvez aussi utiliser le logiciel
unzip
de Info-Zip (disponible à l'adresse http://www.cdrom.com/pub/infozip/Info-Zip.html) pour comprimer les fichiers.zip
; exécutez la commandeunzip votremodule.zip
dans l'interpréteur (shell).Ou encore, si vous disposez de
tar
andgzip
, vous pouvez exécuter :gzip -cd votremodule.tar.gz | tar xvf -
dans l'interpréteur afin de décomprimer
votremodule.tar.gz
. Cela aura pour effet de DÉBALLER le module par la même occasion.B. DÉBALLER le module
Quelle que soit la méthode employée pour DÉCOMPRIMER le fichier résultat aura aussi été DÉBALLÉ dans la foulée sans que vous ayez besoin de faire quoi que ce soit.
C. CONSTRUIRE le module
Allez dans le répertoire nouvellement créé et lancez la commande :
perl Makefile.PL dmake dmake test
Selon la configuration de votre Perl,
dmake
peut ne pas être disponible. Vous devrez alors sans doute lui substituer ce queperl -V:make
vous dira. En général, ce seranmake
oumake
.D. INSTALLER le module
Toujours dans ce répertoire, entrez :
dmake install
Si vous utilisez un Macintosh,
A. DÉCOMPRIMER le module
Vous pouvez employer au choix StuffIt Expander (http://www.aladdinsys.com/) en combinaison avec DropStuff with Expander Enhancer, ou MacGzip (http://persephone.cps.unizar.es/general/gente/spd/gzip/gzip.html).
B. DÉBALLER le module
Si vous utilisez DropStuff ou Stuffit, il vous suffit d'extraire l'archive .tar, mais vous pouvez aussi utiliser suntar (http://www.cirfid.unibo.it/~speranza).
C. CONSTRUIRE le module
1. Si Le module a besoin d'être compilé
Idée de base: vous aurez besoin de MPW et d'une combinaison de compilateurs CodeWarrior récent et ancien pour MPW et ses bibliothèques. Les Makefiles créés pour construire sous MPW utilisent les compilateurs Metrowerk. Il est vraisemblablement possible de compiler sans autres compilateurs, mais cela n'a pas encore été fait avec succès, à notre connaissance. Voyez la documentation disponible dans "MacPerl: Power and Ease" (à l'adresse http://www.ptf.com/macperl/) au sujet des extensions de portage et compilation, ou cherchez une bibliothèque déjà compilée, ou trouvez quelqu'un qui le compile pour vous.
Ou encore, demandez aux abonnés à la liste mac-perl (mac-perl@iis.ee.ethz.ch) de le compiler pour vous. Pour s'abonner à cette liste, écrivez à mac-perl-request@iis.ee.ethz.ch.
2. Si le module n'a pas besoin d'être compilé, continuez ci-dessous.
D. INSTALLER le module
Assurez-vous que les caractères de retour-chariot sont bien en format Mac et non pas en format Unix. Déplacez manuellement les fichiers dans les dossiers correspondants.
Déplacez les fichiers vers leur destination finale. Il s'agira probablement de
$ENV{MACPERL}site_lib:
(c'est à direHD:MacPerl site:site_lib:
). Vous pouvez ajouter de nouveaux chemins à ceux par défaut@INC
dans le menu des préférences de l'application MacPerl ($ENV{MACPERL}site_lib:
est ajouté automagiquement). Créer toute structure de répertoire requise (par exemple, pourSome::Module
, créez$ENV{MACPERL}site_lib:Some:
et placezModule.pm
dans ce répertoire).Exécutez le script suivant (ou quelque chose de semblable):
#!perl -w use AutoSplit; my $dir = "${MACPERL}site_perl"; autosplit("$dir:Some:Module.pm", "$dir:auto", 0, 1, 1);
Un beau jour il finira bien par y avoir une façon d'automatiser ce processus d'installation ; quelques solutions existent déjà, mais aucune d'entre-elles n'est encore prête pour le public.
Si vous êtes sur le portage DJGPP du DOS,
A. DECOMPRIMER
Le programme djtarx (ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2/) décomprimera et déballera le module.
B. DÉBALLER
Voir le paragraphe ci-dessus
C. COMPILER
Allez dans le répertoire nouvellement créé et s<exécutez :>
perl Makefile.PL make make test
Vous aurez besoin des ensembles de programmes mentionnés dans
Readme.dos
dans la distribution Perl.D. INSTALLER
Toujours dans ce répertoire nouvellement créé, exécutez :
make install
Vous aurez besoin des ensembles de programmes mentionnés dans
Readme.dos
dans la distribution Perl.Si vous ëtes sur OS/2,
Procurez-vous la suite EMX de développement et gzip/tar, disponibles chez Hobbes (http://hobbes.nmsu.edu) ou Leo (http://www.leo.org), puis suivez les instructions pour Unix.
Si vous êtes sur VMS,
Au moment de rapatrier le fichier du CPAN, sauvegardez-le avec l'extension
.tgz
au lieu de.tar.gz
. Tous les autres points dans le noms du fichier devront être remplacés par des tirets bas. Par exemple, le fichierVotre-Module-1.33.tar.gz
devra être sauvegardé sous le nomVotre-Module-1_33.tgz
.A. DECOMPRIMER
Exécutez :
gzip -d Votre-Module.tgz
ou, pour les modules zippés, exécutez :
unzip Votre-Module.zip
Les exécutables de gzip, zip, and VMStar (Alphas: http://www.openvms.digital.com/cd/000TOOLS/ALPHA/ et Vaxen: http://www.openvms.digital.com/cd/000TOOLS/VAX/).
gzip and tar se trouvent aussi chez ftp://ftp.digital.com/pub/VMS.
Remarquez que les gzip et gunzip de GNU ne sont pas identiques à ceux de Info-ZIP. Alors que le premier n'est qu'un outil de compression et décompression, le second permet de créer des archives multi-fichiers.
B. DÉBALLER
Si vous utilisez VMStar:
VMStar xf Your-Module.tar
Ou, si vous aimez bien la syntaxe de VMS :
tar/extract/verbose Your_Module.tar
C. CONSTRUIRE
Assurez-vous que vous êtes en possession de MMS (de Digital) ou du logiciel libre MMK (disponible chez MadGoat, http://www.madgoat.com). Puis, exécutez la commande qui suit pour créer le DESCRIP.MMS correspondant au module:
perl Makefile.PL
Vous êtes alors prêt à construire :
mms mms test
Substituez
mmk
àmms
ci-dessus si vous utilisez MMK.D. INSTALLER
Exécutez :
mms install
Substituez
mmk
àmms
ci-dessus si vous utilisez MMK.Si vous êtes sur MVS,
Enregistrez en binaire le fichier .tar.gz sur un HFS ; NE traduisez pas de ASCII à EBCDIC.
A. DECOMPRIMER
Decomprimez le fichier avec la commande C<gzip -d votremodule.tar.gz> gzip se trouve notamment S<à :> http://www.s390.ibm.com/products/oe/bpxqp1.html.
B. DÉBALLER
Déballez le résultat avec la commande :
pax -o to=IBM-1047,from=ISO8859-1 -r < votremodule.tar
Les étapes CONSTUIRE et INSTALLER sont identiques à celles pour Unix. Certains modules génèrent des makefiles qui marchent mieux avec le make de GNU, disponible à l'adresse http://www.mks.com/s390/gnu/index.htm.
OYEZ !
Si vous avez des suggestions de modification de cette page, faites-le moi savoir. S'il vous plaît, ne m'envoyez pas de courriels de demande d'aide à l'installation de vos modules. Il y a bien trop de modules, et bien trop peu de Orwant pour que je puisse répondre à ni accuser réception de vos questions. Écrivez plutôt à l'auteur du module en question ou envoyez un message à comp.lang.perl.modules, ou bien demandez de l'aide à quelqu'un familiarisé avec Perl sur votre système d'exploitation.
AUTEUR
Jon Orwant
orwant@tpj.com
The Perl Journal Perl, http://tpj.com
Avec l'aide incalculable de Brandon Allbery, Charles Bailey, Graham Barr, Dominic Dunlop, Jarkko Hietaniemi, Ben Holzman, Tom Horsley, Nick Ing-Simmons, Tuomas J. Lukka, Laszlo Molnar, Chris Nandor, Alan Olsen, Peter Prymmer, Gurusamy Sarathy, Christoph Spalinger, Dan Sugalski, Larry Virden, et Ilya Zakharevich.
Le 22 juillet 1998.
COPYRIGHT
Copyright (C) 1998 Jon Orwant. Tous droits réservés. Yves Maniette Yves@Maniette.com pour la version en français.
Permission est accordée de fabriquer et distribuer des copies verbatim de cette documentation à condition que soient indiquées sur toutes les copies la notice de copyright et cette notice de permission.
Permission est accordée de copier et distribuer des versions modifiées de cette documentation sous les mêmes conditions que pour les les copies verbatim, et à la condition qu'il soit clairement mentionné qu'il s'agit de versions modifiées, que ne soient pas modifiées les noms et titres des auteurs (bien que puissent être ajoutés des sous-titres et des noms d'auteurs supplémentaires), et que le nouveau produit soit aussi distribué selon les termes d'une notice de permission identique à celle-ci.
Permission est accordée de copier et distribuer des traductions de cette documentation en d'autres langues, dans les conditions indiquées ci-dessus pour les versions modifiées.
TRADUCTION
Version
Cette traduction française correspond à la version anglaise distribuée avec perl 5.005_02. Pour en savoir plus concernant ces traductions, consultez http://perl.enstimac.fr/.
Traducteur
Yves Maniette <Yves@Maniette.com>.
Relecture
Personne pour l'instant.