使用MacOS Sierra上的Homebrew Install,卡在错误加载Scipy上



当我尝试做时,这会发生这种情况:

import scipy.io

另一个Scipy模块,例如Scipy.sparse,似乎还可以。

根错误是:

packages/scipy/special/__init__.py", line 636, in <module>
        from ._ufuncs import *
    ImportError: dlopen(/usr/local/lib/python2.7/site-packages/scipy/special/_ufuncs.so, 2): Symbol not found: ___addtf3

完整的堆栈跟踪:

Traceback (most recent call last):
  File "HistogramClassifier.py", line 3, in <module>
    import scipy.io
  File "/usr/local/lib/python2.7/site-packages/scipy/io/__init__.py", line 97, in <module>
    from .matlab import loadmat, savemat, whosmat, byteordercodes
  File "/usr/local/lib/python2.7/site-packages/scipy/io/matlab/__init__.py", line 13, in <module>
    from .mio import loadmat, savemat, whosmat
  File "/usr/local/lib/python2.7/site-packages/scipy/io/matlab/mio.py", line 12, in <module>
    from .miobase import get_matfile_version, docfiller
  File "/usr/local/lib/python2.7/site-packages/scipy/io/matlab/miobase.py", line 22, in <module>
    from scipy.misc import doccer
  File "/usr/local/lib/python2.7/site-packages/scipy/misc/__init__.py", line 51, in <module>
    from scipy.special import comb, factorial, factorial2, factorialk
  File "/usr/local/lib/python2.7/site-packages/scipy/special/__init__.py", line 636, in <module>
    from ._ufuncs import *
ImportError: dlopen(/usr/local/lib/python2.7/site-packages/scipy/special/_ufuncs.so, 2): Symbol not found: ___addtf3
  Referenced from: /usr/local/lib/python2.7/site-packages/scipy/special/../.dylibs/libquadmath.0.dylib
  Expected in: /usr/lib/libSystem.B.dylib
 in /usr/local/lib/python2.7/site-packages/scipy/special/../.dylibs/libquadmath.0.dylib

就是这样。Google返回了很多命中,但是它们要么很老,要么不是相同的lib,或者我尝试过的东西。这篇文章的其余部分是我到目前为止发现/尝试过的所有内容。

双检查python:

which python
/usr/local/bin/python
ls -l /usr/local/bin/python
lrwxr-xr-x  ... /usr/local/bin/python -> ../Cellar/python/2.7.13/bin/python

我目前不使用虚拟env。

我认为自制是可以的:

brew doctor
Your system is ready to brew.

这是在尝试此操作之后:

brew update
brew upgrade

我还尝试使用酿造和PIP卸载和重新安装Scipy包。

我已经尝试了其他各种事情,但不想弄乱一个工作的自制设置。

据我所知,Google带回了关于"眼镜蛇"的旧文章,据我所知。"哪个眼镜蛇"不返回任何东西。

Google的其他事情谈论图书馆路径的顺序,但这似乎是您正在使用内置的Python,我不认为这不适用版本。

显然,它与图书馆有关,也许与Fortran相关,但是要输入的解决方案...不知道从哪里开始。

尝试以下方法:recome/usr/lib/libsystem.b.dylib暂时重新安装Scipy。

最新更新