The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME/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 commande unzip votremodule.zip dans l'interpréteur (shell).

    Ou encore, si vous disposez de tar and gzip, 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 que perl -V:make vous dira. En général, ce sera nmake ou make.

       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 à dire HD: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, pour Some::Module, créez $ENV{MACPERL}site_lib:Some: et placez Module.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 fichier Votre-Module-1.33.tar.gz devra être sauvegardé sous le nom Votre-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.