Como corrigir o erro “cannot find -lxml2” ao instalar o 'igraph' para python?

5

No Ubuntu 15.04, estou tentando instalar o 'igraph' usando o seguinte comando:

pip install python-igraph

para, bem, usar o pacote igraph em python para trabalhar com gráficos e outras coisas. No entanto, a instalação falha com a seguinte saída

/usr/bin/ld: cannot find -lxml2
/usr/bin/ld: cannot find -lz
collect2: error: ld returned 1 exit status
Makefile:2357: recipe for target 'libigraph.la' failed
make[3]: *** [libigraph.la] Error 1
make[3]: Leaving directory '/tmp/pip-build-8dtEwd/python-igraph/tmp/igraph.dZXTk4/igraph-0.7.1/src'
Makefile:1377: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/tmp/pip-build-8dtEwd/python-igraph/tmp/igraph.dZXTk4/igraph-0.7.1/src'
Makefile:480: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/pip-build-8dtEwd/python-igraph/tmp/igraph.dZXTk4/igraph-0.7.1'
Makefile:382: recipe for target 'all' failed
make: *** [all] Error 2

Extracting igraph-0.7.1.tar.gz...
Configuring igraph...
Could not download and compile the C core of igraph.

libxml2 parece estar instalado (por exemplo, um apt-get install libxml2 não instala nada), então como corrigir esses problemas?

Eu provavelmente codificarei minha própria classe de grafos de qualquer forma, pois suspeito que isso seja mais rápido do que corrigir os problemas acima ...

    
por Alex 08.10.2015 / 09:31

1 resposta

6

libxml2 é a biblioteca compartilhada de tempo de execução, adequada para executar programas já compilados que usam essa biblioteca. Se você deseja compilar programas que usam libxml2 , você precisa instalar o libxml2-dev .

Isso vale para a maioria dos pacotes de bibliotecas no Ubuntu (e debian, mint, etc. RH e outros possuem convenções similares) - libfoo é a biblioteca compartilhada de tempo de execução, libfoo-dev contém os cabeçalhos de desenvolvimento e .a archive

Para libz, o pacote é zlib1g-dev

BTW, python-igraph 0.6.5-1 é empacotado para debian - você tem certeza de que ele não é pré-empacotado para o Ubuntu? Se estiver, é muito melhor instalar o pacote ubuntu.

    
por 08.10.2015 / 09:39