Domanda

Sono nuovo di Perl e sto usando ActivePerl . Sto ottenendo il seguente errore:

  

Impossibile individuare XML / LibXML.pm in @ INC ...

Ho provato tutto ma non riesco a trovare le istruzioni per installare il modulo "corretto" per XML :: LibXML.

Qui è esattamente ciò che sta succedendo. Sono in esecuzione di uno script da un prompt dei comandi:

  

c: \ temp> perl myscript.pl

Le prime righe di 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;
...

Allora ottengo questo errore:

  

c: \ temp> perl myscript.pl Impossibile individuare   XML / LibXML.pm in @ INC (@INC contiene:   C: / Perl / site / lib C: / Perl / lib) a.   linea myscript.pl 7. BEGIN   fallito - compilation interrotta a   Linea myscript.pl 7

È stato utile?

Soluzione

Si dovrebbe essere in grado di installare con la ActivePerl Perl Package Manager . Ci sarebbe dovuto essere un collegamento nel menu di avvio creato durante l'installazione di ActivePerl, avviare il GUI e ricerca di xml-libxml e libxml-perl.

- modifica

Ecco un post su come aggiungere un repository alternativa al PPM e l'installazione di XML-LibXML

Altri suggerimenti

Non sembra come ActiveState fornire un PPM con XML :: LibXML. Ho guardato nel README per il modulo su CPAN e apparentemente un pacchetto ppm prebuild è disponibile qui .

Sono stato di recente attraverso i dolori di ottenere XML :: LibXML installato. Ecco cosa ho trovato:

  1. Stiamo usando ActiveState ActivePerl 5.8.8
  2. Al fine di PPM di ActivePerl per ottenere attraverso il nostro proxy, dovuto creare una variabile d'ambiente "http_proxy" con il valore "http:. //Proxy.ext [es] .com"., Poi ri-login
  3. I pacchetti richiesti non erano tutti situati nella repository di ActiveState. Aggiunto dell'Università di Winnipeg Perl Repository http://theoryx5.uwinnipeg.ca/ppms/package.xml (si noti che il repository esatto utilizzato dipende dalla vostra versione di ActivePerl)
  4. Installare manualmente i seguenti DLL in C: \ perl \ bin \ (per qualsiasi motivo, ho avuto qualche difficoltà a costruire queste DLL, così ho finito semplicemente afferrando dal repository all'indirizzo http://trouchelle.com/ppm/dll/ )
    • iconv.dll
    • libxml2.dll
    • zlib1.dll
  5. Almeno per la versione di XML-LibXML stiamo usando, il programma di installazione del pacchetto non funziona correttamente per il prerequisito XML-LibXML-Comune. È deve installare il pacchetto XML-LibXML-Comune di per sé, prima installare il resto del XML-LibXML.

Anche se non possono essere le ultime versioni, le versioni dei pacchetti (compresi i prerequisiti), che sono attualmente in uso sono:

  • XML-LibXML-comune (ver 0,13)
  • XML-LibXML (ver 1.64)
  • XML-NamespaceSupport (ver 1.10)
  • XML-SAX (ver 0.96)

risposta accettata non ha funzionato per me su 5.16. Da questa domanda :

  

XML :: LibXML non era pronto per Perl 5.16. Installare 5.14

Download:

Alla fine ho trovato l'unico repository alternativa ActivePerl in atto, per quanto posso dire, e aveva un pacchetto per XML :: LibXML 2,0121 che installerà sulle versioni perl fino a 5.20.x.

È possibile ottenere emissioni di ActivePerl da qui che comprende 5.20.2: downloads.activestate.com/ActivePerl/releases /

Il repository alternativa si chiama Tangenti de Perl a bribes.org/perl /

L'URL del repository che viene immesso nelle opzioni è http://bribes.org/perl/ppm/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top