我正在尝试安装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上工作

谢谢你的帮助

从塔玛斯编辑编辑答案:

我检查了一下,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模块时我得到了完全相同的错误...

最佳答案

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

10-06 10:12