perl xml-simple

perl - XML:: Parser se niega a instalar



xml-simple (5)

He intentado instalar XML :: Simple en Ubuntu 12.10 durante las últimas dos horas y me he quedado sin ideas. Está fallando en XML :: Parser.

He hecho un

sudo apt-get install expat

y todavía no funcionó. Aquí está el error que he estado recibiendo:

make[1]: Entering directory `/home/<user>/.cpan/build/XML-Parser-2.41-MCLo7T/Expat'' cp Expat.pm ../blib/lib/XML/Parser/Expat.pm /usr/bin/perl /usr/share/perl/5.14.2/ExtUtils/xsubpp -noprototypes -typemap /usr/share /perl/5.14/ExtUtils/typemap -typemap typemap Expat.xs > Expat.xsc && mv Expat.xsc Expat.c cc -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=/"2.41/" -DXS_VERSION=/"2.41/" -fPIC "-I/usr/lib/perl/5.14/CORE" Expat.c Expat.xs:12:19: fatal error: expat.h: No such file or directory compilation terminated. make[1]: *** [Expat.o] Error 1 make[1]: Leaving directory `/home/sclarawu/.cpan/build/XML-Parser-2.41-MCLo7T/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

Parece estar diciéndome que no puede encontrar expat.h, pero no estoy seguro de por qué o cómo, teniendo en cuenta que expat está instalado. Intenté expandir-desarrollar, pero parece que no es un paquete en apt. Cualquier idea sería muy apreciada. :)

EDITAR: Parecía que simplemente había intentado instalar el paquete incorrecto. -.- Siempre son las pequeñas cosas. Muchas gracias a los que respondieron!


Agregando a las otras respuestas, aquí está cómo instalar la dependencia de expats en CentOS / RHEL:

yum install expat-devel


Necesita instalar la biblioteca Expat y sus encabezados de desarrollo. Para DebUbuntu esto significa que libexpat1-dev y esas distribuciones a menudo dividen sus bibliotecas en dos paquetes: uno para los componentes de tiempo de ejecución (bibliotecas compartidas, archivos de datos, documentación general), uno para los componentes de desarrollo (bibliotecas estáticas, archivos de cabecera, documentación de desarrollo )


Otra forma de llegar a la misma información que @Moritz Bunkus ha señalado anteriormente.

ubuntu:~$ apt-cache search expat expat - XML parsing C library - example application libexpat1 - XML parsing C library - runtime library libexpat1-dev - XML parsing C library - development kit

El tercero en el conjunto de resultados es lo que estás buscando.


Por si acaso, con Debian Jessie tuve que instalar libexpat1-dev ejecutando apt-get install libexpat1-dev


Solo logré instalarlo descargándolo desde cpan y editando manualmente el Makefile.pl dentro para apuntar correctamente a EXPATLIBPATH y EXPATINCPATH .

Vea esta publicación para obtener instrucciones más detalladas.