问题描述
我喜欢从头开始编译python 3.8.7并添加numpy、scipy。 Python 编译得很好,numpy 也是如此(禁用 LAPACK=None、BLAS=None、ATLAS=None)。 如果我编译 scipy,我会遇到以下错误:
File "scipy/linalg/setup.py",line 20,in configuration
raise NotFoundError('no lapack/blas resources found')
numpy.distutils.system_info.NotFoundError: no lapack/blas resources found
我故意不想要 LAPACK、BLAS、ATLAS 依赖项!
有没有办法禁用这些库?
setenv PYHOME "/path/to/my/python"
FFI_VERSION "3.3"
PYTHON_VERSION "3.8.7"
CYTHON_VERSION "0.29.21"
NUMPY_VERSION "1.19.5"
PYBIND11_VERSION "2.6.1"
SCIPY_VERSION "1.5.4"
setenv BLAS "None"
setenv ATLAS "None"
setenv LAPACK "None"
setenv NPY_BLAS_ORDER ""
setenv NPY_LAPACK_ORDER ""
${PYHOME}/bin/python3 setup.py build
${PYHOME}/bin/python3 setup.py install --prefix=${PYHOME}
解决方法
在构建之前,您还需要安装 NumPy 和 SciPy 依赖的包
BLAS 和 LAPACK 库(可选但强烈推荐用于 NumPy,SciPy 需要):通常是 ATLAS + OpenBLAS 或 MKL。
,谢谢!
setenv PYTHON_VERSION "3.6.4"
setenv CYTHON_VERSION "0.24.1"
setenv NUMPY_VERSION "1.11.1"
setenv SCIPY_VERSION "0.18.1"
这个版本/设置在没有 LAPACK 等的情况下工作,被 LAPACK,BLAS,ATLAS=None 开关禁用。所以这个 SciPy 的 Lapack 依赖的硬性要求是后来引入的...