modules perl module cpan strawberry-perl

install perl modules ubuntu



¿Cómo instalo un módulo? Problemas con Strawberry Perl (4)

Esto parece un problema de proxy. El shell cpan usa variables de entorno que deben configurarse para que sepa sobre un proxy, no puede detectarlas desde el navegador.

Las variables de entorno son:

http_proxy proxy host for http requests ftp_proxy proxy host for ftp requests

Como está en Windows, puede hacer lo siguiente desde el mismo shell de comandos:

C:/> set http_proxy=http://proxy.sn.no:8001/ C:/> set ftp_proxy=http://proxy.sn.no:8001/ C:/> cpan

y luego intenta instalar como antes. Debido a que su CPAN está utilizando FTP, será necesario configurar ftp_proxy (y sí, la URL para ello normalmente será una HTTP).

También puede establecer las variables de entorno permanentemente en el panel de control del sistema, generalmente en configuraciones avanzadas, variables de entorno. Puede configurarlos para el sistema o para el usuario actual. Lo mejor es no configurarlos para todo el sistema a menos que tenga una muy buena razón.

Tendrá que averiguar qué es el proxy en realidad. Su navegador debe saberlo, así que eche un vistazo a su configuración de Internet.

Estoy tratando de instalar un módulo Perl dentro de Strawberry Perl en Windows 7.

Estoy ejecutando el comando debajo y estoy recibiendo una gran cantidad de mensajes que no entiendo. Parece que estoy recibiendo 500 errores, como si la página no fuera alcanzable. Sin embargo, cuando apunto las réplicas en mi navegador no tengo problemas para acceder a los directorios FTP. Tengo poca experiencia de Perl en Linux, y ninguna en Windows. Traté de agregar manualmente un espejo al urilista, y no creo que haya sido de ayuda.

C:/Program Files> cpan Win32::IE::Mechanize CPAN: LWP::UserAgent loaded ok (v5.835) CPAN: Time::HiRes loaded ok (v1.9721) Fetching with LWP: http://cpan.strawberryperl.com/authors/01mailrc.txt.gz LWP failed with code[500] message[Can''t connect to cpan.strawberryperl.com:80 (Bad hostname ''cpan.strawberryperl.com'')] Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. Fetching with LWP: ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz LWP failed with code[500] message[LWP::Protocol::MyFTP: Bad hostname ''mirror.teklinks.com''] Fetching with Net::FTP: ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz Could not connect to host ''mirror.teklinks.com'' with Net::FTP Fetching with Net::FTP ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz.gz Could not connect to host ''mirror.teklinks.com'' with Net::FTP Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. As a last resort we now switch to the external ftp command ''C:/WINDOWS/system32/ftp.EXE'' to get ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Doing so often leads to problems that are hard to diagnose. If you''re the victim of such problems, please consider unsetting the ftp config variable with o conf ftp "" o conf commit Issuing "C:/WINDOWS/system32/ftp.EXE -n" Trying with external ftp to get ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz Going to send the dialog open mirror.teklinks.com user anonymous [email protected] lcd C:/strawberry/cpan/sources/authors cd / cd CPAN cd authors bin passive get 01mailrc.txt.gz 01mailrc.txt.gz.tmp5264 quit Unknown host mirror.teklinks.com. Not connected. Local directory now C:/strawberry/cpan/sources/authors. Not connected. Not connected. Not connected. Not connected. Invalid command. Not connected. Bad luck... Still failed! Can''t access URL ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz. Fetching with LWP: http://cpan.strawberryperl.com/authors/01mailrc.txt.gz LWP failed with code[500] message[Can''t connect to cpan.strawberryperl.com:80 (Bad hostname ''cpan.strawberryperl.com'')] Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. Fetching with LWP: ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz LWP failed with code[500] message[LWP::Protocol::MyFTP: Bad hostname ''mirror.teklinks.com''] Fetching with Net::FTP: ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz Could not connect to host ''mirror.teklinks.com'' with Net::FTP Fetching with Net::FTP ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz.gz Could not connect to host ''mirror.teklinks.com'' with Net::FTP Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. Warning: no success downloading ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Giving up on it. As a last resort we now switch to the external ftp command ''C:/WINDOWS/system32/ftp.EXE'' to get ''C:/strawberry/cpan/sources/authors/01mailrc.txt.gz.tmp5264''. Doing so often leads to problems that are hard to diagnose. If you''re the victim of such problems, please consider unsetting the ftp config variable with o conf ftp "" o conf commit Issuing "C:/WINDOWS/system32/ftp.EXE -n" Trying with external ftp to get ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz Going to send the dialog open mirror.teklinks.com user anonymous [email protected] lcd C:/strawberry/cpan/sources/authors cd / cd CPAN cd authors bin passive get 01mailrc.txt.gz 01mailrc.txt.gz.tmp5264 quit Unknown host mirror.teklinks.com. Not connected. Local directory now C:/strawberry/cpan/sources/authors. Not connected. Not connected. Not connected. Not connected. Invalid command. Not connected. Bad luck... Still failed! Can''t access URL ftp://mirror.teklinks.com/CPAN/authors/01mailrc.txt.gz. CPAN: YAML loaded ok (v0.73) Please check, if the URLs I found in your configuration file (http://cpan.strawberryperl.com/, ftp://mirror.teklinks.com/CPAN/) are valid. The urllist can be edited. E.g. with ''o conf urllist push ftp://myurl/'' Could not fetch authors/01mailrc.txt.gz


Esto es fácilmente problemas de firewall / proxy. Necesita configurar la variable cpan en cpan . Ingrese el shell cpan escribiendo cpan en el indicador de comando del shell y presionando enter. Una vez en el caparazón de cpan , ingrese lo siguiente:

o conf http_proxy http://proxy.mycorp.com:8080/

cpan , cpan puede pedirle el nombre de usuario y la contraseña para que pueda usar el proxy para el tráfico http, al menos.

Es posible que tu acceso ftp esté bloqueado por el firewall. cpan funcionará alrededor de esto.

  • Puede consultar su navegador si la configuración del proxy es simple.
  • Si es más complejo, tendrás que
    • pegue la URL a la secuencia de comandos de configuración en la dirección del navegador
    • abra esa URL con un editor cuando el navegador lo solicite (o use un editor que tome URL de http, como jEdit o Notepad ++ ).

Una vez que analiza el caso de su ubicación y CPAN, puede tomar el nombre del servidor devuelto, el puerto, si lo hay, y establecer la variable de entorno o la configuración de cpan con el valor.


Tuve un problema similar, aunque las soluciones aquí no lo arreglaron para mí. Acababa de actualizar Strawberry Perl de 5.18.2.1 a 5.20.1.1 en tres máquinas, y aunque CPAN funcionaba en las dos máquinas con Windows 7, no funcionaba en la máquina con Windows Server 2003.

Al final, lo que me arregló fue eliminar el archivo de configuración de CPAN, C:/strawberry/perl/lib/CPAN/Config.pm en mi caso. Inicié CPAN e hice un reload index ; una vez más, me pidió mis credenciales (que no necesito para el proxy que uso), así que presiono Enter dos veces para dejarlas en blanco, y logró conectarse y actualizar su índice.

Recuerdo haber visto previamente las advertencias en las notas de la versión de Strawberry Perl que dicen eliminar C:/strawberry después de desinstalar la versión anterior y antes de instalar la versión más nueva. No parece haber tal advertencia esta vez, pero es una buena práctica de todos modos, supongo.

Como comentario adicional, una solución temporal que utilicé antes de lograr que CPAN funcionara nuevamente fue copiar los directorios lib , site y vendor de una máquina en la que ya había actualizado Perl y en la que CPAN aún funcionaba. De esta manera, tenía todos los módulos que necesitaba sin que CPAN realmente funcionara. (Las dos máquinas eran de la misma arquitectura, que requieren el mismo instalador para actualizar).


El archivo de configuración de CPAN en el entorno de Strawberry Perl es:

c:/Strawberry/perl/lib/CPAN/Config.pm .

Las definiciones de configuración para un usuario específico se escriben en el archivo MyConfig.pm ubicado debajo de: C:/Users/user name/AppData/Local/.cpan/CPAN/ . Las definiciones de proxy pueden anularse en uno de estos archivos.