我正在尝试链接NumPy和SciPy(在Python 3下,在Fedora 20下),仅使用RPM包(因此,没有pip,手动构建等)。
我尝试了各种各样的东西,但是
import numpy as np
import scipy
scipy.__config__.show()
np.__config__.show()
总是给我通常的“我正在使用ATLAS”信息。
我尝试使用alternatives
,建议here,here以及其他几个资源,但alternatives --list | grep blas
始终为空。我尝试添加libblas.so.3
替代方案,链接到libopenblas.so
,但上述测试的行为没有改变。
我也试图找出SciPy / NumPy加载这些库的位置和方式,但找不到它。
我没有_dotblas.so
(经常在与此相关的各种指示中提及);但是,我确实有_dotblas.cpython-33m.so
,cblas.cpython-33m.so
和fblas.cpython-33m.so
,但没有一个链接到libblas.so.3
(如上一个链接所示)。
删除ATLAS不是一种选择,因为它会拖动更多的包(例如Gimp)。
我还在虚拟机中安装了一个新的Fedora 20。来自百胜的NumPy / SciPy坚持ATLAS。当我删除那些并从pip安装时,他们使用OpenBLAS没有问题(但后来我无法轻松切换ATLAS)。我想要两个,只需一个简单的开关,所以我可以执行各种测试来比较这两个如何执行,并且(重新)在yum和pip之间安装显然不是解决方案。
我想避免重建和手动安装,以便日后更新,因为我需要在几台不同的机器上使用它。在我看来,这似乎不是一件奇怪的事情,要告诉这些模块加载一个库或另一个库,无论何时我想进行更改都不需要重新安装。