在Ubuntu 16.04上的python igraph导入错误

时间:2016-12-11 23:36:01

标签: python igraph importerror ubuntu-16.04

我最近将Ubuntu从14.04升级到16.04,我在使用python igraph(在anaconda上)时遇到了奇怪的问题。我在14.04中没有任何问题。

具体来说 - pip install python-igraph似乎有效:

Collecting python-igraph
Installing collected packages: python-igraph
Successfully installed python-igraph-0.7.1.post6

但是,尝试导入igraph(在Python 2.7.12 | Anaconda 4.2.0(64位)的ipython中,我得到以下内容:

ImportError                               Traceback (most recent call last)
<ipython-input-3-8e950eb5d8d8> in <module>()
----> 1 import igraph

/home/scifric/anaconda2/lib/python2.7/site-packages/igraph/__init__.py in <module>()
     32 # pylint: disable-msg=W0401
     33 # W0401: wildcard import
---> 34 from igraph._igraph import *
     35 from igraph._igraph import __version__, __build_date__
     36 from igraph.clustering import *

ImportError: /home/scifric/anaconda2/lib/python2.7/site-       ackages/igraph/_igraph.so: undefined symbol: _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1Ev

我在Linux Arch或OSX上看到了一些类似问题的线程,似乎没有一个解决方案适合。 知道缺少什么吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

安装/重新安装/卸载/重新编译python igraph和c核心库产生挫折后,这是有效的: 我用pip和conda卸载了python-igraph 在从根目录搜索所有痕迹后删除了所有igraph目录(cd /然后sudo find -name igraph )。 现在,感谢TamásNepusz(@ntamas),感谢他们: 只需安装Anaconda Python的预编译二进制包:

conda install -c marufr python-igraph=0.7.1.post6

取自此处:https://anaconda.org/marufr/python-igraph

这很简单。 (但是我仍然对python igraph和我之前经历的c库之间的冲突感到困惑。至少没有我有它工作。)