He instalado el módulo de Plantilla a través de CPAN en mi MacBook Pro y parece que se instaló correctamente.Dos versiones de Perl en Mac OS X?
Pero, cuando trato de ejecutar un script que incluye el módulo de plantilla, me sale el siguiente:
No se puede encontrar en Template.pm @INC (@INC contiene:/Users/purinkle/Sites/rob/modules /Library/Perl/Updates/5.10.0/darwin-thread-multi-2level /Library/Perl/Updates/5.10.0 /System/Library/Perl/5.10.0/darwin-thread-multi- 2level /System/Library/Perl/5.10.0 /Library/Perl/5.10.0/darwin-thread-multi-2level /Library/Perl/5.10.0 /Network/Library/Perl/5.10.0/darwin-thread- multi-2level /Network/Library/Perl/5.10.0/Network/Library/Perl /System/Library/Perl/Extras/5.10.0/darwin-thread-multi-2level /System/Library/Perl/Extras/5.10. 0) en ./index.pl línea 12.
fallidos de empezar - compilación abortada en la línea ./index.pl 12.
entonces creo que algo debe haber ido mal durante la instalación e intente instalar de nuevo a través de CPAN, pero recibir el siguiente mensaje:
La plantilla está actualizada (2.22).
A continuación, he ejecutado el comando instmodsh para tratar de encontrar dónde está instalado el módulo. instmodsh enumera estos directorios:
/opt/local/bin
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level
/opt/local/lib/perl5/site_perl/5.8.9/Darwin-2Level/Plantilla
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Template/Manual
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Template/Namespace
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Template/Plugin
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Template/ Stash
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Template/Tools
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/ plantilla/Tutorial
/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/auto/Template/Stash/XS
/opt/local/share/man/man1
/opt/local/share/man/man3
Parece como si tuviera alguna forma consiguieron instaladas dos versiones diferentes de Perl (5.8.9 y 5.10.0) y esto está causando confusión entre CPAN y otros scripts de Perl.
¿Cómo puedo verificar esto y cómo se puede resolver este problema?
he corrieron los comandos
which perl
which cpan
y ambos vuelven/opt/local/bin
Correr
find/-name perl
vuelve
hallazgo:/dev/fd/3: No es un directorio
hallazgo:/dev/fd/4: No es un directorio
/opt/local/bin/perl
/opt/local/etc/bash_completion.d/perl
/opt/local/var/macports/software/bash-completion/1.2_0/opt/local/etc/bash_completion.d/perl
/opt/local/var/macports/software/perl5.8/5.8.9_3/opt/local/bin/perl
/opt/local/var/macports/sources/rsync.macports.org/releases e/puertos/Perl
/usr/bin/perl
/usr/local/bin/perl
/usr/share/archivo/magia/Perl
y
find/-name cpan
vuelve
/opt/local/bin/CPAN
/opt/local/var/macports/software/perl5.8/5.8.9_3/opt/local/bin/cpan
/Usuarios/purinkle /. CPAN/build/CPAN-1.9402-KtN827/blib/script/CPAN
/Users/purinkle/.cpan/build/CPAN-1.9402-KtN827/scripts/cpan
/Users/purinkle/.cpan/ build/CPAN-1.9402-zb0AeX/blib/script/cpan
/Users/purinkle/.cpan/build/CPAN-1.9402-zb0AeX/scripts/cpan
/usr/bin/CPAN
Operando
perl -e 'print join "\n", @INC'
vuelve
/Usuarios/purinkle/Sitios/roban/módulos
/opt/local/lib/perl5/site_perl/5.8.9/Darwin-2Level
/opt/local/lib/perl5/site_perl/5.8.9
/opt/local/lib/perl5/site_perl
/opt/local/lib/perl5/vendor_perl/5.8.9/Darwin-2Level
/opt/local/lib/perl5/vendor_perl/5.8.9
/opt/local/lib/perl5/vendor_perl
/opt/local/lib/perl5/5.8.9/darwin-2level
/opt/local/lib/perl5/5.8.9
consulte editado mi respuesta, también puede publicar la salida de perl -e "@INC impresión \ n" – ennuikiller