导入失败 scipy.special "Symbol not found: ___addtf3"
Failed scipy.special import "Symbol not found: ___addtf3"
每当我尝试 运行 此代码时:
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 从来没有遇到过这个问题。非常感谢!
我有一个临时修复方法(还原 scipy),但我更愿意确定问题的确切原因:
conda uninstall scipy
conda install scipy=0.15.0
这是在 Yosemite 运行 Python 3.4 miniconda 环境中。
conda v 3.15.0 显然有问题导致了这些症状。修复是在 2015 年 7 月 23 日发布 conda v 3.15.1,并让人们重新安装。
参见 conda issue #1467, Error in scipy 0.16 packaging in official conda channels on OSX 上的讨论。考虑到你提问的时间,就在几天后的 2015 年 7 月,这可能对你有影响。
我遇到了类似的问题,只是我使用 pip install -r requirements.txt
在 virtualenv 中安装 scipy,其中一个要求是 scipy==0.18.0
。我终于通过删除我的 pip 缓存并重试解决了这个问题。
更具体地说,我是这样做的:
- 停用 virtualenv
flask
sudo rm -r flask/
- 仔细检查了我的 PATH 和 PYTHONPATH 环境变量,去掉了对其他项目和其他 Python 版本的引用
- 将我的 MacPorts Python 版本设置为 2.7,符合我项目的需要:
Sudo port set python python27
- 删除我的 pip 缓存,
rm -r ~/Library/Caches/pip/http/* ~/Library/Caches/pip/wheels/*
- 重新创建了 virtualenv:
virtualenv flask
- 重新激活虚拟环境:
source flask/bin/activate
- 执行了
make
操作,调用了 pip install -r requirements.txt
我想出了一个 shorthand 来检测问题:
% 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
每当我尝试 运行 此代码时:
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 从来没有遇到过这个问题。非常感谢!
我有一个临时修复方法(还原 scipy),但我更愿意确定问题的确切原因:
conda uninstall scipy
conda install scipy=0.15.0
这是在 Yosemite 运行 Python 3.4 miniconda 环境中。
conda v 3.15.0 显然有问题导致了这些症状。修复是在 2015 年 7 月 23 日发布 conda v 3.15.1,并让人们重新安装。
参见 conda issue #1467, Error in scipy 0.16 packaging in official conda channels on OSX 上的讨论。考虑到你提问的时间,就在几天后的 2015 年 7 月,这可能对你有影响。
我遇到了类似的问题,只是我使用 pip install -r requirements.txt
在 virtualenv 中安装 scipy,其中一个要求是 scipy==0.18.0
。我终于通过删除我的 pip 缓存并重试解决了这个问题。
更具体地说,我是这样做的:
- 停用 virtualenv
flask
sudo rm -r flask/
- 仔细检查了我的 PATH 和 PYTHONPATH 环境变量,去掉了对其他项目和其他 Python 版本的引用
- 将我的 MacPorts Python 版本设置为 2.7,符合我项目的需要:
Sudo port set python python27
- 删除我的 pip 缓存,
rm -r ~/Library/Caches/pip/http/* ~/Library/Caches/pip/wheels/*
- 重新创建了 virtualenv:
virtualenv flask
- 重新激活虚拟环境:
source flask/bin/activate
- 执行了
make
操作,调用了pip install -r requirements.txt
我想出了一个 shorthand 来检测问题:
% 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