导入python-igraph

时间:2016-01-28 17:19:40

标签: python macos igraph

我正在尝试安装python-igraph包。安装工作没有任何警告或错误,但是,当我尝试导入模块时,我收到一个错误:

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

/usr/local/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: dlopen(/usr/local/lib/python2.7/site-packages/igraph/_igraph.so, 2): Library not loaded: /usr/local/opt/gmp/lib/libgmp.10.dylib
  Referenced from: /usr/local/opt/glpk/lib/libglpk.36.dylib
  Reason: Incompatible library version: libglpk.36.dylib requires version 14.0.0 or later, but libgmp.10.dylib provides version 13.0.0

我无法解决这个问题。我看到了this post并尝试了他们的解决方案,但它没有用(问题是没有安装glpk,而对我来说已安装)。

要安装它,我执行了以下操作:

brew tap homebrew/science
brew install igraph
sudo pip install python-igraph

我检查了gmp和glpk是否与brew install igraph

一起安装

有没有人知道如何安装它?

我正在使用python2.7

在Mac OS x el capitan上工作

感谢您的帮助

从Tamás编辑回答:

我检查过,gmp和glpk确实来自自制软件。实际上,/usr/local/opt/gmp<path_to_>Cellar/gmp/6.0.0a/usr/local/opt/glpk<path_to_>Cellar/glpk/4.57的符号链接。

我还是尝试卸载igraph(brew uninstall igraph),将/usr/local/opt中的文件移动到gmp和glpk的其他位置,然后重新安装igraph。但是在导入python模块时我得到了同样的错误...

2 个答案:

答案 0 :(得分:2)

GMP和GLPK似乎不是来自Homebrew,它们彼此不兼容。您必须修复GMP和GLPK的安装。或者,您可以卸载igraph,然后暂时将GMP和GLPK的目录从/usr/local/opt移动到其他位置,然后再次安装igraphigraph然后会“认为”您的机器上没有GLPK和GMP,并且在没有GLPK和GMP支持的情况下自行编译(并禁用一些需要GLPK和GMP的功能)。

答案 1 :(得分:0)

<强>解决:

感谢您的评论,我意识到,事实上,Homebrew没有最新版本的gmp。 所以,我从gmp website下载了最后一个版本,并且:

  • 卸载igraph
  • 从下载的版本
  • 安装了gmp
  • 重新安装igraph

现在它可以工作,我可以导入python包!