我为自定义numpy安装了英特尔MKL和其他库。这是我的~/.numpy-site.cfg
:
[DEFAULT]
library_dirs = /usr/lib:/usr/local/lib
include_dirs = /usr/include:/usr/local/include
[mkl]
library_dirs = /opt/intel/mkl/lib/intel64/
include_dirs = /opt/intel/mkl/include/
mkl_libs = mkl_rt
lapack_libs =
[amd]
amd_libs = amd
[umfpack]
umfpack_libs = umfpack
[djbfft]
include_dirs = /usr/local/djbfft/include
library_dirs = /usr/local/djbfft/lib
在安装numpy期间,此配置文件似乎正常。但当我通过pip3 install scipy
安装scipy时,它报告了
numpy.distutils.system_info.BlasNotFoundError:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
在我看来,MKL是Blas的一个实现,所以只提一下MKL应该没问题。我试过了
export LD_LIBRARY_PATH=/opt/intel/mkl/lib/intel64:$LD_LIBRARY_PATH
export BLAS=/opt/intel/mkl/lib/intel64
[mkl]
部分中的内容并粘贴到文件[blas]
~/.numpy-site.cfg
部分
醇>
但这些都不起作用。出了什么问题? scipy尊重~/.numpy-site.cfg
?谢谢。
答案 0 :(得分:0)
..../intel64
中您的图书馆的扩展名是什么?我遇到了类似的问题,因为安装脚本.so.3.0
的扩展名没有找到库。我的解决方案是创建符号链接:https://stackoverflow.com/a/23325759/1430829。也许这对你也有用吗?