SciPy 无法通过 pip 安装

Posted

技术标签:

【中文标题】SciPy 无法通过 pip 安装【英文标题】:SciPy fails to install via pip 【发布时间】:2016-05-18 21:19:32 【问题描述】:

我尝试在SLURM 环境中使用 pip 安装 SciPy。 NumPy 和其他一些 python 模块已经安装并且工作正常。

但是,当我运行时:

pip2.7 install --user --use-wheel scipy

pip2.7 安装 --user scipy

我总是收到一堵巨大的文字墙,结尾是:

错误:命令“/sw/compiler/gcc-4.9.3/bin/gfortran -Wall -g -shared -Wall -g -shared -shared build/temp.linux-x86_64-2.7/scipy/integrate/_odepackmodule.o -L/sw/env/gcc-4.9.3_openmpi-1.8.8/pkgsrc/2015Q4/lib -L/sw/env/gcc-4.9.3_openmpi-1.8.8/pkgsrc/2015Q4/lib -Lbuild/temp.linux -x86_64-2.7 -lodepack -lmach -llapack -lblas -lpython2.7 -lgfortran -o build/lib.linux-x86_64-2.7/scipy/integrate/_odepack.so”失败 退出状态 1


命令“/sw/env/gcc-4.9.3_openmpi-1.8.8/pkgsrc/2015Q4/bin/python2.7 -c “导入设置工具, tokenize;file='/work/tmp/node001.admin.2016-02-09-015538.intx033.31602/pip-build-fORQns/scipy/setup.py';exec(compile( getattr(标记化, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" 安装 --record /work/tmp/node001.admin.2016-02-09-015538.intx033.31602/pip-7oTcK5-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" 失败,错误代码为 1 /work/tmp/node001.admin.2016-02-09-015538.intx033.31602/pip-build-fORQns/scipy

很遗憾,我不知道这应该告诉我什么……有什么想法吗?

【问题讨论】:

当 scipy 安装失败但其他包安装失败时,通常是 gfortran、LAPACK 或 BLAS 有问题。不熟悉 Slurm,但如果没有其他人对您有任何更具体的建议,我建议确保这些设置正确。 好的,谢谢。您是否有任何链接/文档具体说明需要哪些 gfortran、LAPACK 和 BLAS 包?以及哪些版本? 我不认为它过于挑剔。此处文档的开头提供了一些指导,并且大部分过程都有详细信息:scipy.org/scipylib/building/linux.html 【参考方案1】:

您需要有 C、C++ 和 fortran 编译器以及 BLAS/LAPACK 库来编译 scipy。最简单的选择可能是 gcc+gfortran+prebuilt atlas,它应该可以工作。对于性能,尤其是线性代数,您可能需要考虑使用 intel MKL 或 OpenBLAS。

【讨论】:

【参考方案2】:

我建议不要使用 gfortran 包,而是通过科学包安装 scipy: Python XY Anaconda (supports virtual env)

【讨论】:

以上是关于SciPy 无法通过 pip 安装的主要内容,如果未能解决你的问题,请参考以下文章

错误:无法为使用 PEP 517 且无法直接安装的 scipy 构建***

scipy的安装教程

scipy的安装教程

scipy的安装教程

无法使用 pip 1.5.6 安装 scipy、matplotlob 和 scikit-learn

使用pip命令和本地whl安装Python扩展库的方法(以scipy-1.5.4为例,附scipy-1.5.4高速下载链接)