Installation des modules CPAN via local:: lib
OBSOLETE: Ce texte a été rendu obsolète par le texte de Perl plus facile que jamais .
Installation des modules CPAN sur les machines où vous n'avez pas les permissions root est très simple. En utilisant le module local:: lib CPAN lui-même, vous pouvez créer une installation locale dans laquelle les modules sont installés dans leur propre maison.
Mise en place cpan
Il suffit d'appeler un terminal et tapez la commande cpan. Il vous montrera un petit message de la présentation et vous demander si vous souhaitez vous permettent de configurer tout automatiquement. Pour la plupart des cas, la configuration automatique est suffisant, mais je vais définir quelques options pour moi, donc je vais répondre «non».
Seriez-vous comme moi pour configurer automatiquement autant que possible? [Oui] dans
La première option que je vais réponse différente de la valeur par défaut est la politique qui définit les conditions préalables (<prerequisites_policy>). Il définit ce que doit faire le CPAN lorsqu'ils sont confrontés à un module qui a une addiction. La valeur par défaut est «demander» (demander).
Politique sur les conditions de construction (suivi, demander ou ignorer)? [Demandez] suivi
Je vais changer pour «suivre» (ci-dessous). Ainsi, lorsque le CPAN trouver un module qui a une certaine dépendance, plutôt que de me poser, il va essayer de l'installer automatiquement. Cette installation est extrêmement utile au cours de long avec un arbre de dépendance aussi importante que le catalyseur.
Politique sur l'installation de modules build_requires '(oui, non, demandez / oui, demandez / non)? [Demandez / oui] oui
Suite à la question sur l'installation de dépendances de construction des modules. Je vais changer de «demander / oui 'à' oui 'à les dépendances de construction sont également installés. La valeur par défaut est de demander et de proposer une réponse affirmative.
Vient ensuite une série de questions sur les outils normalement utiliser CPAN. Je profite de ce moment pour vérifier si quelque chose manquait, puis l'installer.
Où est votre programme bzip2? [/ Bin/bzip2] Où est votre programme gzip? [/ Bin / gzip]
Plusieurs options après la prochaine, c'est que j'ai changer le charset par défaut ISO-8859-1 en UTF-8.
L'option suivante traite avec le charset (jeu de caractères alias) de votre terminal supporte. En général, le CPAN est l'anglais le territoire de parler, aussi le jeu de caractères n'est pas très important, mais certains ont CPAN noms qui sont en dehors de la plage ASCII. Si votre terminal supporte l'UTF-8, vous devez dire non à la question suivante. Si elle attend ISO-8859-1 (aussi appelé Latin1), alors vous devriez dire oui. Si elle soutient Neith, votre réponse Peu importe, car vous ne serez pas capable de lire les noms de certains auteurs de toute façon. Si vous répondez non, les noms seront de sortie en UTF-8. Votre terminal attend la norme ISO-8859-1 (oui / non)? [Oui] dans
CPAN va lui demander s'il peut se connecter à Internet pour télécharger la liste des dépôts. Il est bien instruits sur les choses qu'il doit faire, donc nous sommes la définition des options qui permettent plus d'indépendance. Répondez oui et attendre qu'elle pour télécharger la liste des serveurs.
Après avoir communiqué avec la valeur par défaut des serveurs, il vous demande ce que vous voulez configurer des référentiels en trois étapes. Demandez d'abord le continent, puis pays et enfin le dépôt lui-même. Vous pouvez choisir plus d'une option en même temps. J'ai choisi de continents d'Amérique du Sud et Amérique du Nord aux pays du Brésil, le Chili et les Etats-Unis et, enfin, certains référentiels dans chaque pays. Sentez-vous libre de choisir comment et ce que vous voulez.
Pronto. Maintenant vous êtes dans le shell CPAN.
Installation du module local:: lib
La prochaine étape consiste à installer et à configurer le module local:: lib. Pour cela tapez la commande cpan shell:
cpan [1]> regarde local:: lib Cela rendra le téléchargement que le module CPAN, mais ne l'installez pas automatiquement. Au contraire, elle va ouvrir un nouveau shell dans le répertoire où il déballé le module local:: lib.
Dans cette enveloppe, ne le bootstrap avec les commandes suivantes:
catalyseur de spectro @: ~ / perl Makefile.PL $ .cpan/build/local-lib-1.004003-UyX2wf \ - Bootstrap & & make test & & make install
Last but not least, vous devez exporter les variables d'environnement. Pour quitter le shell courant (Ctrl + D), quittez le shell CPAN (bye ou quit) et exécutez la commande suivante dans bash:
& gt; & gt;~ / .bashrc echo 'eval $ (perl-I $ HOME/perl5/lib/perl5-Mlocal: lib). "& gt; & gt; ~ / bashrc
Cela va ajouter les commandes à l'exportation des variables d'environnement à la fin de votre fichier. Bashrc, et ensuite chaque connexion, ils seront automatiquement exportés.
Groupe re-mise en oeuvre de son bashrc ou de déconnexion et de connexion à nouveau
catalyseur de spectro @: ~ $. ~ /. Bashrc
Assurez-vous que les variables d'environnement ont été établies ou des choses étranges peuvent se produire. Comprendre pourquoi «les choses étranges" autre chose que le bon fonctionnement. Certains peuvent être vraiment bizarre. ![]()
| grep perl catalyseur de spectro @: ~ $ env | grep perl home / catalyst / perl5 / lib / perl5: / home / catalyst / perl5 / lib / perl5... PERL5LIB = / home / catalyseur / perl5 / lib / perl5: / home / catalyseur / perl5 / lib / perl5 ... home / catalyst / perl5 / .modulebuildrc MODULEBUILDRC = / home / catalyseur / perl5 /. Modulebuildrc home / catalyst / perl5 / bin: / usr / local / bin: / usr / bin: / bin: / usr / games Bin / usr / local /:: PATH = / home / catalyseur / perl5 / bin / usr / bin: / bin: / usr / games = / home / catalyst / perl5 PERL_MM_OPT INSTALL_BASE = = / home / catalyseur / perl5 catalyseur de spectro @: ~ $
Retouche de maquillage
Maintenant, avant de commencer l'installation des modules, c'est une bonne mise à niveau du module lui-même CPAN.pm. Notez le cas.
catalyseur de spectro @: ~ $ cpan CPAN ... Installation / home/catalyst/perl5/bin/cpan Rédaction / home/catalyst/perl5/lib/perl5/i486-linux-gnu-thread-multi/auto ... Ajout d'informations sur l'installation d'/ home/catalyst/perl5/lib/perl5/i486-linux ... ANDK/CPAN-1.9402.tar.gz / Usr / bin / make install - OK Avertissement (généralement inoffensives): «YAML 'n'est pas installé, ne persistera pas stocker ... catalyseur de spectro @: ~ $
Après avoir installé la nouvelle version de la note CPAN.pm qu'il prévient que le module YAML n'est pas installé. Pour rendre les choses vont trop grassouillet Intal.
catalyseur de spectro @: ~ $ cpan YAML ... Rédaction / home/catalyst/perl5/lib/perl5/i486-linux-gnu-thread-multi/auto/Y ... Ajout d'informations sur l'installation d'/ home/catalyst/perl5/lib/perl5/i486-linux ... INGY/YAML-0.68.tar.gz / Usr / bin / make install - OK CPAN: ok YAML chargé (v0.68) Allez lire à partir d'un fichier YAML / home / catalyseur /. Cpan / build / FAIT Aucune restaurée de l'Etat (en 0,0265 secondes) catalyseur de spectro @: ~ $
Maintenant oui. Regardons les choses en check-out, où est le nouvellement installé le module YAML:
catalyseur de spectro @: ~ $ ls ~ / perl5/lib/perl5 CPAN CPAN.pm i486-linux-gnu-thread-multi site de YAML YAML.pm test catalyseur de spectro @: ~ $
Il a été installé dans une arborescence de répertoires créés au domicile de l'utilisateur courant. Tout cela sans demander mot de passe root une fois.
Conclusion
Installation des modules CPAN localement sans mot de passe root est très facile. Cela est extrêmement utile sur les machines où vous n'avez que la permission de l'utilisateur, et hébergement de serveurs.
Un autre avantage est que les mêmes modules de prendre à une autre machine (avec la même architecture) perl5 suffit de copier le répertoire que vous venez de créer, puisque tous les modules sont installés en elle, et ajouter la commande qui exporte les variables l'environnement sur la machine cible. Cela est également utile lorsque vous avez un serveur d'hébergement qui ne vous donne pas accès à un shell.
Liens (en) utiles
Commentaires
- http://rio.pm.org Smokemachine
- http://rio.pm.org Smokemachine
- http://blabos.pip.verisignlabs.com/ bavarder
- http://blabos.pip.verisignlabs.com/ bavarder
- Http://russoz.wordpress.com/ russes
- Http://russoz.wordpress.com/ russes
- Marcio Vitor
- Marcio Vitor
- http://blog.blabos.org/2010/02/criando-um-mini-mirror-do-cpan-com-o-cpanmini/ Créer un mini-miroir avec le CPAN CPAN:: Mini: Blog de Blaber bulle
- Fernando
- Blaber http://blabos.org des bleb
- Fernando

