Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
documentation:tools:langages:perl5 [2017/01/30 10:29] – [Installer des modules supplémentaires CPAN dans le $HOME] ltaulelldocumentation:tools:langages:perl5 [2020/08/25 15:58] – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 ====== Perl5 ====== ====== Perl5 ======
  
-Environnement Debian 7 de base au PSMN, **charger le [[documentation:tools:modules|modulefile Base/psmn]]**+===== Notes aux utilisateurs =====
  
-===== Installer des modules supplémentaires CPAN dans le $HOME =====+   * Attention, la version **perl5.24** n'est plus aussi tolérante sur des petites libertés d'écriture qui étaient tolérées dans les versions antérieures.
  
-Pour installer des modules supplémentairesvous pouvez utiliser le CPAN (Comprehensive Perl Archive Network).+Par exemple <code perl>push $ArrayRef$Var;</code> ne fonctionne plus, il faut faire <code perl>push @$ArrayRef, $Var;</code> (qui est plus rigoureux). 
  
-  * wrapper debian+Ce comportement peut faire apparaître quelques bugs dans vos codes ! 
  
-<code bash> +===== Installer des modules supplémentaires CPAN dans le $HOME =====
-cpan +
-</code>+
  
-La commande originelle qu'on retrouve dans les manuels : ''perl -MCPAN -e shell''+Pour installer des modules supplémentaires, vous pouvez utiliser le CPAN (Comprehensive Perl Archive Network).
  
-Si le cpan demande à faire une installation automatique, il faut répondre ''no'', puis choisir ''[INSTALLDIRS=local::lib]'' et ''[--install_base=~/perl5]''.+==== -1Configurer votre environnement ====
  
-Ensuite, les réponses par défaut conviennent à la majorité des utilisateurs.+Si les réglages par défaut du PSMN ne vous conviennent pas, vous pouvez modifier votre environnement :
  
-Modifs du ''~/.bashrc'', en lieu et place de celle du script CPAN :+  * **pour Bash** 
 + 
 +Modifiez votre ''~/.bashrc'' ainsi :
  
 <code bash> <code bash>
-export PERL5LIB="/etc/perl:/usr/lib/perl5:/usr/share/perl5:/usr/lib/perl/5.14:/usr/share/perl/5.14"+export PERL5LIB="/etc/perl:/usr/lib/perl5:/usr/share/perl5:/usr/share/perl/5.24"
 export PERL5LIB="${HOME}/perl5/lib/perl5:${PERL5LIB}" export PERL5LIB="${HOME}/perl5/lib/perl5:${PERL5LIB}"
 export PERLLIB="" export PERLLIB=""
Ligne 33: Ligne 33:
 </code> </code>
  
-recharger l'environnement (''logout/login'' ou ''source ~/.bashrc''), puis revenir dans le cpan, et le mettre à jour :+ 
 +  * **pour Csh/tcsh** 
 + 
 +Modifiez votre ''~/.cshrc'' ainsi (remplacez ''$HOME'' par ''/home/votrelogin'', si nécessaire) : 
 + 
 +<code bash> 
 +setenv PERL5LIB "/etc/perl:/usr/lib/perl5:/usr/share/perl5:/usr/share/perl/5.24" 
 +setenv PERL5LIB "$HOME/perl5/lib/perl5:${PERL5LIB}" 
 +unsetenv PERLLIB 
 + 
 +setenv PERL_LOCAL_LIB_ROOT "$HOME/perl5" 
 +setenv PERL_MB_OPT "--install_base $HOME/perl5" 
 +setenv PERL_MM_OPT "INSTALL_BASE=$HOME/perl5" 
 +setenv PERL5OPT "-I$HOME/perl5/lib/perl5 -I$HOME/perl5/lib/perl5/site_perl" 
 +   
 +</code> 
 + 
 +Après ces modifications, rechargez votre environnement (''source ~/.bashrc'' ou ''source ~/.cshrc'')
 + 
 +==== -2- Installation du CPAN ==== 
 + 
 +Sur les machines Debianil existe un wrapper simplifiant l'appel au CPAN : 
 + 
 +<code bash> 
 +cpan 
 +</code> 
 + 
 +Vous pouvez aussi utiliser la commande originelle qu'on retrouve dans les manuels : ''perl -MCPAN -e shell'' 
 + 
 +Si le cpan demande à faire une installation automatique, il faut répondre ''no'', puis choisir \\ 
 +''[INSTALLDIRS] = local::lib'' \\ 
 +''[--installdirs] = ~/perl5'' \\ 
 +ou ''[--install_base] = ~/perl5'' \\ 
 + 
 +Ensuite, les réponses par défaut conviennent à la majorité des utilisateurs.
  
 <code perl> <code perl>
Ligne 41: Ligne 75:
 </code> </code>
  
-Vous pouvez maintenant installer tous les modules (**BioPerl**) dont vous avez besoin dans la limite de l'espace disponible de votre $HOME.+Vous pouvez maintenant installer tous les modules dont vous avez besoin dans la limite de l'espace disponible de votre $HOME.
  
-**Exemple :**+  * **Exemple :**
  
 <code> <code>
Ligne 53: Ligne 87:
 </code> </code>
  
-Modifications pour ''~/.cshrc'' (**remplacez** ''HOME'' par ''/home/votrelogin'') 
  
-<code csh> + 
-setenv PERL5LIB "/etc/perl:/usr/lib/perl5:/usr/share/perl5:/usr/lib/perl/5.14:/usr/share/perl/5.14" +
-setenv PERL5LIB "HOME/perl5/lib/perl5:${PERL5LIB}" +
-unsetenv PERLLIB +
-setenv PERL_LOCAL_LIB_ROOT "HOME/perl5" +
-setenv PERL_MB_OPT "--install_base HOME/perl5" +
-setenv PERL_MM_OPT "INSTALL_BASE=HOME/perl5" +
-setenv PERL5OPT "-IHOME/perl5/lib/perl5 -IHOME/perl5/lib/perl5/site_perl" +
-   +
-</code>+
  
 ===== Références ===== ===== Références =====
  
     * http://openwall.info/wiki/internal/perl/cpan     * http://openwall.info/wiki/internal/perl/cpan
 +    * http://alvinalexander.com/perl/edu/articles/pl010015 
 +    * http://www.symkat.com/find-a-perl-modules-path 
 +    * http://www.perlhowto.com/extending_the_library_path 
 +    * https://perlmaven.com/how-to-change-inc-to-find-perl-modules-in-non-standard-locations