每当我尝试运行此代码时:
from scipy.special import legendre
我一直遇到以下错误。
ImportError:
dlopen(/Users/william/miniconda/envs/myenv/lib/python3.4/site-packages/scipy/special/_ufuncs.so, 2): Symbol not found: ___addtf3
Referenced from: /Users/william/miniconda/envs/prakenv/lib/python3.4/site-packages/scipy/special/_ufuncs.so
Expected in: /usr/lib/libSystem.B.dylib
我尝试恢复到以前版本的scipy并使用Python 2.7 conda环境,但问题仍然存在。我以前从未遇到过scipy这个问题。非常感谢你!
答案 0 :(得分:1)
conda v 3.15.0显然存在导致这些症状的问题。修复是在2015-07-23发布conda v 3.15.1,并让人们重新安装。
见conda issue #1467, Error in scipy 0.16 packaging in official conda channels on OSX的讨论。鉴于问题的时间安排,就在几天后的2015年7月,这可能会对您产生影响。
答案 1 :(得分:1)
我有一个类似的问题,除了我使用pip install -r requirements.txt
在virtualenv中安装scipy,其中一个要求是scipy==0.18.0
。我终于通过删除我的pip缓存并再次尝试来解决它。
更具体地说,我这样做了:
flask
sudo rm -r flask/
Sudo port set python python27
rm -r ~/Library/Caches/pip/http/* ~/Library/Caches/pip/wheels/*
virtualenv flask
source flask/bin/activate
make
pip install -r requirements.txt
操作
醇>
我想出了一个检测问题的简写:
% python -c 'import scipy.special'
问题发生时,我收到错误回复:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/myuser/project/flask/lib/python2.7/site-packages/scipy/special/__init__.py", line 636, in <module>
from ._ufuncs import *
ImportError: dlopen(/Users/myuser/project/flask/lib/python2.7/site-packages/scipy/special/_ufuncs.so, 2): Symbol not found: ___addtf3
Referenced from: /Users/myuser/project/flask/lib/python2.7/site-packages/scipy/special/../.dylibs/libquadmath.0.dylib
Expected in: /usr/lib/libSystem.B.dylib
in /Users/myuser/project/flask/lib/python2.7/site-packages/scipy/special/../.dylibs/libquadmath.0.dylib
问题得到纠正后,没有输出。
当测试在没有scipy的环境中运行时(例如在virtualenv之外),出现了预期的错误:
ImportError: No module named scipy.special
答案 2 :(得分:0)
我有一个临时修复(恢复scipy),虽然我更愿意确定问题的确切原因:
conda uninstall scipy
conda install scipy=0.15.0
这是在Yosemite上运行的Python 3.4 miniconda环境。