Come installare XML :: Parser senza Expat-Devol?
-
13-12-2019 - |
Domanda
XML :: Il parser non riesce a costruire una scatola di debian a 64 bit molto fresca.Dopo l'emissione di cpan XML::Parser
, CPAN non riesce con molti errori su Expat.c e Expat.xs:
[...]
Expat.xs:2182: error: ‘CallbackVector’ has no member named ‘skip_until’
Expat.c: In function ‘XS_XML__Parser__Expat_Do_External_Parse’:
Expat.c:2904: error: ‘XML_Parser’ undeclared (first use in this function)
Expat.c:2904: error: expected ‘;’ before ‘parser’
Expat.xs:2194: error: ‘parser’ undeclared (first use in this function)
make[1]: *** [Expat.o] Error 1
make[1]: Leaving directory `/root/.cpan/build/XML-Parser-2.41-rpV6ok/Expat'
make: *** [subdirs] Error 2
TODDR/XML-Parser-2.41.tar.gz
/usr/bin/make -- NOT OK
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
.
Messaggio all'inizio dell'output spiega che Expat-Devel è necessario per la costruzione.
.Expat deve essere installato prima di costruire XML :: Parser e non riesco a trovare Nelle directory della libreria standard.Installa il pacchetto 'Expat-Devel' con il tuo Gestore del pacchetto OS.Vedi 'README'.
ma expat-sviluppo non è in debian repository.
È possibile superare questo senza bisogno di creare / installare l'espatr di origine?
Soluzione
Il pacchetto che si desidera installare è denominato libexpat1-dev
.Potresti anche installare libxml-parser-perl
tramite APT-Get.O se vuoi davvero installare tramite CPAN, prova a installare le dipendenze Debian Packages prima tramite apt-get build-dep libxml-parser-perl
.
Altri suggerimenti
libexpat1-dev contiene sia libexpat che expat.h, che sono entrambi menzionati inAnche il messaggio:
.Se è installato Expat, ma in una directory non standard, quindi utilizzare il Seguenti opzioni per MakeFile.pl:
expatlibpath= ... per impostare la directory in cui trovare libexpat
expatincpath= ... per impostare la directory in cui trovare Expat.h
Installazione di Libexpat1-Dev sembra risolvere il problema:
$ aptitude install libexpat1-dev
. C'è sempre il metodo manuale - per creare / installare Expat dalla fonte. (Questo esempio mostra l'installazione in una posizione alternativa per XAMPP | LAMPP )
Scarica da: http://sourceforge.net/projects/expat/files/expat/
.tar zxf /[where-ever]/expat-2.1.0.tar.gz -C /tmp
cd /tmp/expat-2.1.0
/opt/lampp/bin/perl ./configure --prefix=/opt/lampp LDFLAGS=-L/opt/lampp/lib
make
make install
.
http://search.cpan.org - Cerca e download - XML :: Parser
Lavora come un fascino in Ubuntu 15.04.L'unica cosa di cui ho bisogno è installare Perl XML Parser con:
sudo apt-get install libxml-parser-perl
.
E seguendo le istruzioni qui, sono stato in grado di importare con successo tutte le mie valutazioni in Rhythmbox.Ora, l'unico lavoro che devo fare è creare di nuovo gli elenchi di Smart Play, non è nulla rispetto a tutti i miei voti dei libri.
Oggi ho avuto lo stesso problema che volevo complicare il nuovo GIMP 2.9.4 Beta su OSX 10.8 e l'aiuto di homebrew.
Prima installazione perl
brew install perl
.
Quindi il modulo XML :: Parser andando nel guscio Perl con
perl -MCPAN -e shell
.
e all'interno della shell install XML :: Parser digitando
install XML::Parser
.
Exit Shell
exit
.
Ora, verificare che sia stato installato correttamente.Se tutto è OK, non vedrai un errore.
perl -e "require XML::Parser"
.
Se il ./configure fallisce ancora mancante xml :: parser, quindi intltools non utilizza il perl che hai installato.Guardando lo script mi dice che fa il test con $INTLTOOL_PERL -e "require XML::Parser"
.Provare un echo $INTLTOOL_PERL
non ha dato nulla, quindi la magia è di impostarlo con
export $INTLTOOL_PERL=perl
.
Ora esegui ./configure di nuovo.
Nessuno dei metodi di cui sopra ha funzionato per me.Ho avuto la configurazione delle variabili di ambiente giusta, ma in qualche modo non sono state raccolte da cpanm
che uso per installare i moduli perl.Expat è stato anche installato.
Ecco cosa ho fatto per superare lo stesso problema che op sta segnalando. Questo è molto vicino a ciò che @ladybuzz suggerito.
- .
- Scarica il
XML::Parser
dacpan.org
- Estrai il tarball nella directory e scende ad esso.
- Apri il
Makefile.pl
e modifica le prime linee per effettivamente i percorsi assoluti su entrambi:EXPATLIBPATH
eEXPATINCPATH
- Salva il
Makefile.pl
, sali un livello e crea un nuovo tarball con ilMakefile.pl
che hai appena modificato. - Esegui
cpanm
sul tarball appena creato.
Ciò ha comportato un'installazione riuscita del modulo.