2012-03-08 41 views
10

Me pregunto si alguien me puede ayudar. Instalé CPAN.pm a través de la línea de comando y luego intenté instalar un módulo a través de CPAN. Pero me encontré con un error:error al ejecutar cpan la primera vez

Can't call method "http" on unblessed reference at /usr/lib/perl5/5.10.0/CPAN/FirstTime.pm line 1866. 
+1

"CPAN instalado"? CPAN es un módulo central. – TLP

+0

@TLP Sí, es CPAN que instalé desde la línea de comandos primero porque parece que no era parte del sistema que estoy manteniendo (fedora11). Lo compilé/instalé desde la fuente y luego intenté instalar un módulo a través de él. Entonces fue cuando encontré el error que resalté. Tenga en cuenta que mi http_proxy está configurado para que no haya problemas con mi conexión a Internet – icasimpan

+0

. Debe mostrarnos lo que hizo en la línea de comandos. –

Respuesta

6

En primer lugar me sorprende que CPAN no está ya instalado, ya que ha sido parte de la distribución estándar de Perl desde Perl 5.004 fue lanzado hace quince años.

En segundo lugar me sorprende que todavía estás usando Fedora 11. Esa versión ha sido admitido desde junio de 2010.

En tercer lugar, me sorprende que desea utilizar como CPAN.pm CPANPLUS y son cpanminus ambas son mejores interfaces para CPAN.

Pero teniendo en cuenta todas esas sorpresas, si quiere CPAN en su sistema, el mejor enfoque es probablemente utilizar el que el proyecto de Fedora precompuso para usted.

$ sudo yum install perl-CPAN 

Habrá una serie de módulos de CPAN disponibles preconstruidos desde Fedora. Puede verlos todos usando:

$ yum list available perl-\* 

Encontrará aún más disponible para las versiones recientes de Fedora.

Casi con seguridad puede obtener CPANPLUS instalando perl-CPANPLUS. Dudo si cpanminus está disponible para una versión tan antigua de Fedora.

+0

su sugerencia de hacer 'yum install perl-CPAN' funcionó para mí. Gracias :) – icasimpan

+0

Pero por favor, tome nota de mis otras sugerencias también. 1/Actualiza a una versión compatible de Fedora. 2/Use CPANPLUS o cpanminus en lugar de CPAN. –

+0

Tomaré nota de su sugerencia para CPANPLUS o cpanminus. Soy bastante nuevo para Perl, así que eso ayuda. En cuanto a su sugerencia de actualizar a una versión admitida de Fedora, no estoy en libertad de hacerlo. El equipo de desarrollo en nuestra compañía dicta qué distribución/versión usar. – icasimpan

0

Tuve el mismo error y no tenía privilegios de administrador. El problema estaba con la existencia de dos versiones de CPAN instalados:

  • /usr/bin/CPAN
  • /usr/local/bin/CPAN

Cuando he especificado el primer caso, lo que se comenzó a trabajar.

6

Acabo de tener el mismo problema al instalar Perlbrew.

Después de hacer algunas depuraciones, descubrí que este error ocurre porque la lógica CPAN no pudo encontrar un candidato espejo. Por supuesto, esto podría mejorarse en CPAN :: Mirrors o CPAN :: FirstTime con solo verificar los resultados devueltos por las funciones relacionadas.

Dado que no están marcados (y por lo tanto se supone que siempre devuelve algún valor) obtuve este error sin sentido. Pero debo decir que no me registré más para ver por qué no se devuelve ningún valor después de todo.

Puede evitar este error de forma segura simplemente seleccionando No como respuesta para la configuración automática. Por supuesto, tendrá que responder para cada una de las directivas de configuración.

Lo tengo mientras instalo perl 5.16.3 hasta perlbrew.

3

Este error se puede resolver al ingresar los campos de nombre de usuario y contraseña en el proxy que utiliza cpan. 1] de la primera instalación CPAN por

sudo yum install perl-CPAN 

2] A continuación, ejecute el siguiente comando

cpan 

Se pide el establecimiento de fundamentos, a continuación, seleccione la opción "NO" para recoger automáticamente a continuación, seguir presionando entrar hasta que esté solicitó "Conectarse automáticamente a Internet", presione no.

3] Luego se le solicitarán los detalles reflejados para seguir seleccionando de la lista que proporcionó.

4] A continuación, establezca el nombre de usuario proxy y campos de contraseña

5] La instalación será entonces completa y que le llevará a CPAN> pedirá, como a continuación

cpan> 

6] En el indicador de entrar

install Bundle::LWP 
Cuestiones relacionadas