Página 1 de 1

Problemas al instalar módulos detrás de un proxy

NotaPublicado: 2009-12-02 05:41 @278
por Damian
Hola,

estoy intentando instalar el módulo DateTime en Windows y me estoy encontrando con problemas que no soy capaz de solucionar. Lo he intentado de 2 formas:

--> Con la interfaz gráfica de PPM. Tengo algún problema de conexión a los repositorios. En mi empresa hay un proxy y he configurado la variable de entorno http_proxy para que pueda conectarse a él. Sin embargo, al lanzar el PPM me salen mensajes del estilo de:

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Downloading log4perl packlist ... not found
Downloading trouchelle packlist ... not found
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


y no aparece la lista de módulos disponibles. No sé qué puedo hacer para solucionarlo.

---> Lo he intentado bajándome el zip de la dirección http://ppm.activestate.com/PPMPackages/zips/ de DateTime y utilizando el comando ppm install, tal y como se indica en los tutoriales. El problema de esta opción parece ser las dependencias, me he tenido que instalar varios módulos como el DateTime-Locate o Params:validate. No he tenido problema excepto al intentar instalarme el paquete DateTime-TimeZone. En ese caso se sale el error:

ppm install failed: cant find any package that provides Cwd for DateTime-TimeZone

Sin embargo, no me puedo descargar ningún paquete que se llame CWd. ¿Cómo puedo solucionar esta dependencia? ¿Cwd no debería venir instalado por defecto con Perl? De hecho yo he utilizado el comando getcwd sin problema en mis scripts.

Nada más, espero que me podáis echar una mano porque estoy bastante atascado.

Muchas Gracias.

Re: Problemas al instalar módulos detrás de un proxy

NotaPublicado: 2009-12-02 06:28 @311
por explorer
Lo que hay que intentar siempre es arreglar el tema del proxy, porque de esa manera resolvemos el segundo problema: PPM se encargará de las dependencias.

En la documentación de ActiveState están las instrucciones para configurar el acceso por proxy.

Nota: cuando tuve que hacer esto, la variable de entorno no era http_proxy, sino en mayúsculas: HTTP_PROXY.

Actualización: Según Damian, confirma que la variable de entorno debe estar en mayúsculas, así que reedito la siguiente guía en la parte de Windows y Linux. Desconozco cómo ha de ser en Mac.

Traducido:

PPM, Proxies y Cortafuegos

Si usas un servidor proxy o cortafuegos, quizás necesites tener la variable de entorno HTTP_PROXY para que PPM pueda trabajar.

La variable de entorno HTTP_PROXY

Inicializa la variable HTTP_PROXY con el nombre del servidor o dirección IP del servidor proxy:

HTTP_PROXY=http://proxy.example.org

Si el servidor proxy requiere de un usuario y contraseña, inclúyelos de la siguiente forma:

HTTP_PROXY=http://usuario:contraseñ[email protected]

Si el servidor proxy utiliza un puerto distinto del 80, incluye el número de puerto:

HTTP_PROXY=http://usuario:contraseñ[email protected]:8080

Activando HTTP_PROXY

Windows XP
  1. Abre el panel de control y pulsa sobre el icono del Sistema.
    El diálogo de Propiedades del Sistema se mostrará.
  2. En la pestaña de Avanzado, pulsa sobre Variables de Entorno.
    El diálogo de Variables de Entorno se mostrará.
  3. Pulsa Nueva en el panel de variables del Sistema.
    El diálogo de Nueva Variable del Sistema se mostrará.
  4. Añade HTTP_PROXY con la información apropiada (ver ejemplos anteriores).

Windows 200x
  1. Pulsa con el botón derecho sobre Mi PC.
  2. Pulsa en Propiedades y seleccina la pestaña de Avanzado.
  3. Pulsa en "Variables de Entorno".
    El diálogo de "Variables del Sistema" aparece.
  4. Pulsa Nuevo y añade HTTP_PROXY, con la información apropiada (ver ejemplos anteriores).

Windows NT
  1. Pulsa con el botón derecho sobre Mi PC.
  2. Pulsa en Propiedades y selecciona la pestaña de Entorno.
  3. Añade HTTP_PROXY con la información apropiada (ver ejemplos anteriores).

Windows 95/98/ME
  1. Abre el fichero C:\autoexec.bat para editarlo (p.e. en Notepad).
  2. Añade una línea "SET" como la siguiente (ver ejemplos arriba):

    SET HTTP_PROXY=http://username:password@servidor:puerto

  3. Reinicia el ordenador para que el cambio tome efecto.

Mac OS X

El http_proxy debe ser puesto en dos lugares del OS X:
  • Shell: Añade una línea como la siguiente en .bash_profile (/Users/<name>/.bash_profile):

    http_proxy=http://usuario:contraseña@servidor:puerto; export http_proxy

    Esta opción afecta a PPM cuando se lanza de o usado desde la línea de comandos.

  • Desktop: Añade una entrada como la siguiente en tu fichero environment.plist (/Users/<name>/.MacOSX/environment.plist):

    <key>http_proxy</key>
    <string>http://usuario:contraseña@servidor:puerto</string>

    Esta opción afecta a PPM cuando es lanzado pulsando sobre el icono de PPM.

Linux, Solaris or HP-UX

Pon la variable de entorno HTTP_PROXY usando el comando específico de tu shell (p.e. set o export). Para hacer que este cambio sea permanente, añade el comando al fichero profile correspondiente a tu shell. Por ejemplo, en bash, añade una línea como la siguiente a tu fichero .bash_profile o .bashrc:

HTTP_PROXY=http://usuario:contraseña@servidor:puerto; export HTTP_PROXY

Re: Problemas al instalar módulos detrás de un proxy

NotaPublicado: 2009-12-02 10:10 @465
por Damian
Hola,

Te confirmo que la variable en Windows también tiene que ser en mayúsculas: HTTP_PROXY. Si lo cambias a minúsculas no funciona.

Ya he conseguido solucionar el problema poniendo la variable de entorno en mayúsculas y hablando con el departamento de sistemas de mi empresa, que por seguridad no me permitía conectarme a los repositorios.

Gracias por la ayuda.

Re: Problemas al instalar módulos detrás de un proxy

NotaPublicado: 2010-01-12 07:41 @362
por cascoamarillo
Hola a todos,

Primero presentarme, que soy nuevo en el foro. Soy biólogo y penoso principiante de programación.

Decir que tenía el mismo problema al actualizar/instalar módulos. Era debido a la conexión tipo proxy de la universidad. Ahora funciona correctamente para instalarme el Bioperl.

Muchas gracias.

Re: Problemas al instalar módulos detrás de un proxy

NotaPublicado: 2010-01-12 10:54 @496
por salva
Damian escribiste:Nada más, espero que me podáis echar una mano porque estoy bastante atascado.

¡Veo que ya te has desatascado!

De todas formas, para esas ocasiones en las que es necesario instalar módulos en una máquina desde la cual no se puede acceder a CPAN, existe CPAN::Mini que es un módulo que te permite crear tu propia copia de CPAN con las últimas versiones de todos los paquetes en local.

Lo primero creas tu mini-cpan en un PC con acceso a Internet y lo grabas en un DVD. Luego, metes el DVD en la máquina donde quieres instalar los módulos y configuras el módulo CPAN para que tire del mismo añadiendo la url correspondiente. Por ejemplo:

cpan[1]> o conf url file:///media/cdrom0/minicpan

Y a partir de ese momento ya puedes utilizar la shell de CPAN sin problemas.