2009-09-07 10 views
6

Soy nuevo en Perl y estoy usando ActivePerl. estoy consiguiendo el error siguiente:¿Cómo instalo XML :: LibXML para ActivePerl?

Can't locate XML/LibXML.pm in @INC...

He intentado todo pero no puede encontrar los pasos para instalar el módulo "correcta" para XML :: LibXML.

Esto es exactamente lo que está pasando. Estoy corriendo un script desde la línea de comandos:

c:\temp>perl myscript.pl

Las primeras líneas de myscript.pl:

#!/usr/bin/perl 

use Archive::Zip qw(:ERROR_CODES :CONSTANTS); 
use HTTP::Date; 
use XML::Parser; 
use LWP::UserAgent; 
use XML::LibXML; 
use Archive::Extract; 
use Encode; 
use LWP::Simple; 

require HTTP::Request; 
... 

Entonces me sale este error:

c:\temp>perl myscript.pl Can't locate XML/LibXML.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at myscript.pl line 7. BEGIN failed--compilation aborted at myscript.pl line 7

+0

¿Está tratando de usar XML :: LibXML directamente o es una dependencia de otro módulo que está utilizando? –

+0

He agregado algunos más detalles arriba. He agregado el paquete libxml usando el administrador de paquetes activeperl –

Respuesta

7

Usted debe ser capaz para instalarlo con el ActivePerl Perl Package Manager. Debería haber un acceso directo al menú de inicio creado al instalar ActivePerl, iniciar the GUI y buscar xml-libxml y libxml-perl.

--edit

Here's a post on adding an alternative repository to PPM and installing XML-LibXML

+0

Gracias, pero instalé "libxml-perl" desde el "Administrador de paquetes de ActivePerl" y sigo recibiendo el mismo error. Revisé los detalles y ese paquete no instala LibXML.pm Aquí hay una captura de pantalla http://bit.ly/cf3av –

+0

Intenta buscar xml-libxml. – robertc

+0

No se viene nada ... Agregué algunos detalles más a la pregunta. ¡Gracias! –

3

No se ve como ActiveState proporcionar un PPM con XML :: LibXML. Miré en el archivo README para el módulo en CPAN y, aparentemente, un paquete de prebuild ppm está disponible here.

+0

del enlace de arriba es un error 503 para mí, pero las fuentes están disponibles en cpan aquí http://search.cpan.org/perldoc?XML%3A%3ALibXML – RJFalconer

2

Recientemente he tenido problemas para obtener XML :: LibXML instalado. Aquí es lo que encontré:

  1. Estamos utilizando ActiveState ActivePerl 5.8.8
  2. Para PPM de ActivePerl para llegar a través de nuestro proxy, tuvo que crear una variable de entorno "http_proxy" con el valor "http: // proxy.ext. [ejemplo] .com ", luego vuelva a iniciar sesión.
  3. Los paquetes necesarios no estaban todos ubicados en el repositorio de ActiveState. Se agregó Repositorio Perl de la Universidad de Winnipeg http://theoryx5.uwinnipeg.ca/ppms/package.xml (tenga en cuenta que el repositorio exacto utilizado depende de su versión de ActivePerl)
  4. Instale manualmente los siguientes archivos DLL en C: \ perl \ bin \ (por alguna razón, tuve problemas para compilar estos archivos DLL , así que terminé simplemente agarrándolos del repositorio en http://trouchelle.com/ppm/dll/)
    • iconv.dll
    • libxml2.dll
    • zlib1.dll
  5. al menos para la versión de XML-LibXML somos usando, el packa El instalador ge no funciona correctamente para el prerrequisito XML-LibXML-Common. Usted MUST de instalar el paquete XML-LibXML-Común por sí mismo, ANTES instalar el resto de XML-LibXML.

Aunque puede que no sean las últimas versiones, las versiones de los paquetes (incluyendo requisitos previos), que actualmente estoy usando son:

  • XML-LibXML-Común (versión 0.13)
  • XML -LibXML (ver 1,64)
  • XML-NamespaceSupport (ver 1,10)
  • XML-SAX (ver 0,96)
+0

Tengo el mismo problema hoy. ¿Acabas de copiar esos 3 .dll en la carpeta C: \ Perl \ bin \? Usando la búsqueda desde ppm, solo devuelve libxml-perl [0.08] libxml-perl – laurentngu

+0

Sí, acabo de copiar esos 3 archivos DLL que describí. – sn00gan

0

Al final me encontré con el único repositorio de ActivePerl alternativa en la existencia, por lo que yo puedo decir, y tenía un paquete para XML :: LibXML 2.0121 que se instalará en versiones de Perl hasta 5.20.x.

Puede obtener los comunicados de ActivePerl desde aquí que incluye 5.20.2: downloads.activestate.com/ActivePerl/releases/

El repositorio alternativa se llama soborno de Perl en bribes.org/perl/

El URL del repositorio que se ingresa en las opciones es http://bribes.org/perl/ppm/

Cuestiones relacionadas