web-dev-qa-db-ja.com

Pythonの「igraph」のインストール中に「-lxml2が見つかりません」エラーを修正する方法

Ubuntu 15.04では、次のコマンドを使用して「igraph」をインストールしようとしています。

pip install python-igraph

pythonのigraphパッケージを使用してグラフなどを操作するには、次の出力でインストールが失敗します。

/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がインストールされているようです(つまり、apt-get install libxml2は何もインストールしません)、それでこれらの問題を修正するにはどうすればよいですか?

上記の問題を修正するよりも速いと思われるので、とにかく私は自分のグラフクラスをコーディングするでしょう...

7
Alex

libxml2はランタイム共有ライブラリであり、そのライブラリを使用するコンパイル済みプログラムの実行に適しています。 libxml2を使用するプログラムをコンパイルする場合は、libxml2-devをインストールする必要があります。

これは、ubuntuのほとんどのライブラリパッケージに当てはまります(debian、mintなど。RHと他の規則は同じです)-libfooはランタイム共有ライブラリ、libfoo-devは開発ヘッダーと.aアーカイブを含みます

Libzの場合、パッケージはzlib1g-devです。

ところで、python-igraph 0.6.5-1はdebian用にパッケージ化されています-ubuntu用にも事前にパッケージ化されていませんか?もしそうなら、あなたはubuntuパッケージをインストールする方がはるかに良いです。

7
cas