我最近将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上看到了一些类似问题的线程,似乎没有一个解决方案适合。 知道缺少什么吗?
谢谢!
答案 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库之间的冲突感到困惑。至少没有我有它工作。)