如何修复ImportError:无法使用slycot

时间:2015-10-07 21:40:59

标签: python anaconda

我使用

在OS X上的anaconda下安装了python包slycot
conda install -c http://conda.binstar.org/cwrowley slycot

但是当我试图通过

使用它时
import slycot

我收到了这个错误

ImportError: dlopen(/Users/pheon/anaconda/lib/python2.7/site-packages/slycot/_wrapper.so, 2): Library not loaded: /usr/local/lib/gcc/4.9/libgfortran.3.dylib
  Referenced from: /Users/pheon/anaconda/lib/python2.7/site-packages/slycot/_wrapper.so
  Reason: image not found

我错过了应该安装的东西吗?

我有libgfortran.3.dylib,但它安装在

的/ usr /本地/ LIB / GCC / 5

我必须链接某些内容吗?

更新:

我创建了一个新的conda环境并安装了slycot。我也必须安装一个gcc,所以链接可能有问题。

完成后,我仍然遇到了ImportError。所以我再次尝试从源代码安装。这产生了一个长期的fortran输出日志,所以这次它一定做了不同的事情。

但是,我仍然得到ImportError。

./ lib / libgfortran.3.dylib安装在env。

otool -L /Users/pheon/anaconda/envs/snowflakes/lib/python2.7/site-
packages/slycot/_wrapper.so

给出

/Users/pheon/anaconda/envs/snowflakes/lib/python2.7/site-packages/slycot/_wrapper.so:
    liblapack.dylib (compatibility version 0.0.0, current version 0.0.0)
    @rpath/./libgfortran.3.dylib (compatibility version 4.0.0, current version 4.0.0)
    /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 955.0.0)
    /Users/acurtis/anaconda/envs/snowflakes/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
    @rpath/./libquadmath.0.dylib (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1225.1.1)

>>>import slycot

仍然给出了

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "slycot/__init__.py", line 16, in <module>
    from .analysis import ab01nd,ab05md,ab05nd,ab07nd,ab08nd, ab09ad, \
  File "slycot/analysis.py", line 21, in <module>
    from . import _wrapper
ImportError: cannot import name _wrapper

这可能与#34; @ rpath&#34;有关。我之前没有看到过这个?

1 个答案:

答案 0 :(得分:0)

我发现slicot使用了gcc 4.9中的库。解决方案是安装gcc 4.9。我是用自制软件做的。

brew install gcc49

现在一切正常。