Impossible d'installer tous les modules perl car il ne peut pas l'emplacement stricte.pm
Bonjour StackOverflow De La Communauté,
Je suis en train d'installer un module perl, IO::Tous. Mais à chaque fois que je utiliser CPAN pour installer de nombreux modules perl (y compris si je lance à partir de l'intérieur de cpan "install Build::CPAN"), il échoue avec
Ne peut pas localiser stricte.pm in @INC (@INC contient:
/dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86_64-64int
/dev/null/lib/perl5.8-dist
/dev/null/lib/perl5.8-dist/Linux-2.6c2.5-x86_64-64int
/dev/null/lib/perl5.8-dist /dev/null/lib/perl5.8-dist .) au Build.PL
ligne 2.
Cela a été déroutant pour moi heures. J'ai googlé autour et n'arrive pas à trouver une solution. L'exécution de quelque chose comme
perl -e 'use strict; print "ok"'
Sorties de l'amende juste. Et le fichier d'origine, j'ai été de tenter de les exécuter, ce qui demande IO::Toutes les utilisations stricte. Comment est stricte, même manquant? N'est-ce pas le strict cadre de perl par défaut? Et où est /dev/null? N'est-ce pas un endroit spécial où vous pouvez passer dans stderr/stdout si vous n'avez pas de soins à ce sujet? J'ai été en tirant mes cheveux à ce sujet pendant un certain temps. Je doit manquer quelque chose d'évident.
C'est en cours d'exécution sur un Rhel5 de la Machine Virtuelle Linux-2.6-x86_64 variante.
Votre aide est très appréciée. Permettez-moi de savoir si j'ai besoin de fournir de plus amples informations.
Merci,
-Asaf
echo o conf | perl -MCPAN -e shell
Quelles sont
/apollo/env/envImprovement/bin/make
et /apollo/env/envImprovement/var/bin/zsh
? J'avais essayer de faire 1) o conf make /usr/bin/make
2) o conf shell /bin/sh
3) o conf commit
pour voir si cela fait une différence.ce n'
perl -V:install.*lib
spectacle? ce n' perl -wle'print for @INC'
spectacle?Quoi?! l'installation de la lib n'est pas même dans
@INC
? Oui, il y a une certaine étrangeté dans la façon dont cette perl a été construit et installé. À ce stade, je me demande comment le /apollo/
sont ajoutés à @INC
. Ces chemins doivent être codés en dur dans perl
, mais ils semblent être ajoutés par d'autres moyens que se substituée. Je me demande ce que vous avez dans le %ENV
section de perl -V
(en majuscules "V").Ce n'est pas compliqué à corriger. Juste réinstaller Perl. Mais cela signifierait perdre vos personnalisations, et nous ne savons pas ce que ceux qui sont.
OriginalL'auteur Asaf | 2014-04-05
Vous devez vous connecter pour publier un commentaire.
J'ai ce problème aujourd'hui. J'ai compilé perl 5.14 et installer à mon répertoire home ($HOME/perl5.14/).
Parce que perl5.14 installer un minimum de perl5 bibliothèques, vous devez inclure le répertoire $PERL5LIB=$HOME/perl5.14/usr/local/lib/perl5/5.14.2
Espérons que cela fonctionne pour vous 🙂
OriginalL'auteur benck
Je pense aussi que votre cpan script est mal configuré. Mais
perl -MCPAN
utilise la même config, donc ne vous aide pas.De l'installation d'une alternative CPAN client pourrait aider. Je le recommande cpanminus car il est très facile à installer. Il suffit d'exécuter la commande suivante (de préférence en étant connecté en tant que root):
Maintenant, vous devriez avoir cpanminus, vous pouvez l'utiliser pour installer IO::Tous:
OriginalL'auteur tobyink