Windows Scipy 安装:未找到 Lapack/Blas 资源

2025-01-20 09:07:00
admin
原创
101
摘要:问题描述:我正在尝试将 Python 和一系列软件包安装到 64 位 Windows 7 桌面上。我已经安装了 Python 3.4,安装了 Microsoft Visual Studio C++,并成功安装了 numpy、pandas 和其他一些软件包。尝试安装 scipy 时出现以下错误;numpy.di...

问题描述:

我正在尝试将 Python 和一系列软件包安装到 64 位 Windows 7 桌面上。我已经安装了 Python 3.4,安装了 Microsoft Visual Studio C++,并成功安装了 numpy、pandas 和其他一些软件包。尝试安装 scipy 时出现以下错误;

numpy.distutils.system_info.NotFoundError: no lapack/blas resources found

我正在离线使用 pip install,我使用的安装命令是;

pip install --no-index --find-links="S:pythonscipy 0.15.0" scipy

我读过这里关于需要编译器的帖子,如果我理解正确的话,它是 VS C++ 编译器。我使用的是 2010 版本,因为我使用的是 Python 3.4。这对其他软件包也有效。

我是否必须使用窗口二进制文件,或者有没有办法让 pip install 工作?

非常感谢你的帮助


解决方案 1:

以下链接应该可以解决 Windows 和 SciPy 的所有问题;只需选择适当的下载即可。我能够毫无问题地 pip 安装该软件包。我尝试过的所有其他解决方案都让我头疼不已。

来源: http: //www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

命令:

 pip install [Local File Location][Your specific file such as scipy-0.16.0-cp27-none-win_amd64.whl]

假设您已经安装了以下内容:

  1. 安装带有 Python 工具的 Visual Studio 2015/2013

(集成到 2015 安装的设置选项中)

  1. 安装适用于 Python 的 Visual Studio C++ 编译器

来源:http://www.microsoft.com/en-us/download/details.aspx?

id=44266 文件名:VCForPython27.msi

  1. 安装所选的 Python 版本

来源:python.org

文件名(例如):python-2.7.10.amd64.msi

解决方案 2:

我的python版本是2.7.10,64位Windows 7。

  1. 下载scipy-0.18.0-cp27-cp27m-win_amd64.whlhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

  2. 打开cmd

  3. 确保scipy-0.18.0-cp27-cp27m-win_amd64.whl位于cmd的当前目录中,然后输入pip install scipy-0.18.0-cp27-cp27m-win_amd64.whl

就安装成功了。

解决方案 3:

解决 Windows 7 64 位上 SciPy 安装缺少 BLAS/LAPACK 库的问题如下:

http://www.scipy.org/scipylib/building/windows.html

安装 Anaconda 要容易得多,但如果不付费,您仍然无法获得 Intel MKL 或 GPU 支持(它们位于 Anaconda 的 MKL 优化和加速附加组件中 - 我不确定它们是否使用 PLASMA 和 MAGMA)。通过 MKL 优化,numpy 在大型矩阵计算上的表现比 IDL 高出 10 倍。MATLAB 在内部使用 Intel MKL 库并支持 GPU 计算,因此如果学生(MATLAB 50 美元 + 并行计算工具箱 10 美元)不妨使用它。如果您获得 Intel Parallel Studio 的免费试用版,它附带 MKL 库以及 C++ 和 FORTRAN 编译器,如果您想在 Windows 上从 MKL 或 ATLAS 安装 BLAS 和 LAPACK,这些编译器会派上用场:

http://icl.cs.utk.edu/lapack-for-windows/lapack/

Parallel Studio 还附带 Intel MPI 库,可用于集群计算应用程序及其最新的 Xeon 处理器。虽然使用 MKL 优化构建 BLAS 和 LAPACK 的过程并不简单,但这样做对 Python 和 R 的好处相当大,正如英特尔网络研讨会所述:

https://software.intel.com/en-us/articles/powered-by-mkl-acceleating-numpy-and-scipy-performance-with-intel-mkl-python

Anaconda 和 Enthought 已经通过使此功能和其他一些功能更易于部署而建立了业务。但是,对于那些愿意付出一点努力(和一点学习)的人来说,它是免费提供的。

对于使用 R 的用户,现在可以通过 Revolution Analytics 的R Open免费获得 MKL 优化的 BLAS 和 LAPACK 。

编辑:Anaconda Python 现在附带 MKL 优化,并通过 Intel Python 发行版支持许多其他 Intel 库优化。但是,Accelerate 库(以前称为 NumbaPro)中对 Anaconda 的 GPU 支持仍然超过 10,000 美元!最好的替代方案可能是 PyCUDA 和 scikit-cuda,因为不幸的是,copperhead(本质上是 Anaconda Accelerate 的免费版本)五年前就停止了开发。如果有人想从他们离开的地方继续,可以在这里找到它。

解决方案 4:

2024 年更新:

由于资金丢失,以下链接不再有效(请参阅https://github.com/python-ldap/python-ldap/issues/511)。

相关 wheel 文件现可在以下位置找到:
https ://github.com/cgohlke/numpy-mkl-wheels/releases 。请查看旧版本的 numpy+mkl 和 scipy 文件。


抱歉,这是第一个谷歌搜索结果。这是对我有用的解决方案:

  1. http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy下载 numpy+mkl wheel
    。使用与您的 Python 版本相同的版本(使用 python -V 检查)。例如,如果您的 Python 是 3.5.2,请下载显示 cp35 的 wheel

  2. 打开命令提示符并导航到下载 wheel 的文件夹。运行命令:pip install [wheel 文件名]

  3. 从以下网址下载 SciPy 轮子: http: //www.lfd.uci.edu/~gohlke/pythonlibs/#scipy(类似于上面的步骤)。

  4. 同上,pip install [wheel 的文件名]

解决方案 5:

这是我让一切正常运行的顺序。第二点是最重要的一点。Scipy 需要Numpy+MKL,而不仅仅是 vanilla Numpy

  1. 安装python 3.5

  2. pip install "file path"(从这里下载 Numpy+MKL 轮子http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

  3. pip install scipy

解决方案 6:

您可能只是安装了太新的(不受支持的)Python 3.x。

本页提供了过于复杂的问题解决方案。大多数 numpy / scipy 用户不需要编译他们的 numpy 安装或需要依赖第三方“numpy+mkl”轮子。

下载编译器是一种反模式,您不需要构建 numpy,只需使用它。[ github.com/numpy ]

解决方案

  • 安装受支持的 Python 版本后,使用以下命令删除不起作用的 numpy 安装

pip uninstall numpy

并使用以下方式安装 scipy

pip install scipy --only-binary numpy
  • 将强制安装二进制轮()版本的numpy。如果失败,则说明您的python版本太新(尚不支持)。--only-binary numpy`.whl`

  • 如果你安装了多个 Python 版本,你可以通过以下方式确保 pip 安装的是你想要的 Python 版本

<path_to_python_executable> -m pip install <X> 

而不是 pip install <X>

为什么会发生这种情况?

  • Scipy 依赖于 numpy,从setup.py或通过阅读 pip install 日志就可以看出。

  • 如果您安装了太新的(不受支持的)python,pip 存储库中没有内置的 wheel (.whl),而是 tarball (.tar.gz),在这种情况下,需要用户计算机在安装期间编译一些 C++ 代码。另请参阅:Python 打包:wheels 与 tarball (tar.gz)

附录

  • 请查看https://pypi.org/project/numpy/以获取受支持的 Python 版本列表。目前(2020-11-04)使用或更高版本时,最新支持的 Python 版本是Python 3.9。使用 时,最新支持的 Python 版本是Python 3.8。(有关旧 numpy 版本的兼容性,请参阅numpy 发行说明)numpy 1.19.3`numpy 1.19.2`

  • 如果您使用的是 Windows 并看到pip尝试安装numpy-<x>.tag.gz,您就知道它可能无法正常工作。请尝试使用旧版本的 Python。您想查看 pip 以安装适用于 Windows 的 numpy 二进制 wheel( )。您可以在此处numpy-<x>.whl检查 pip 中适用于 numpy 的 wheel 。

解决方案 7:

如果你使用的是 Windows 和 Visual Studio 2015

输入以下命令

  • “conda 安装 numpy”

  • “conda 安装 pandas”

  • “conda 安装 scipy”

解决方案 8:

在 Windows 中简单快速地安装 Scipy

  1. http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy下载适合您的 Python 版本的正确 Scipy 包(例如,适用于 python 3.5 和 Windows x64 的正确包是scipy-0.19.1-cp35-cp35m-win_amd64.whl)。

  2. cmd在包含下载的 Scipy 包的目录内打开。

  3. 类型pip install <<your-scipy-package-name>>(例如 pip install scipy-0.19.1-cp35-cp35m-win_amd64.whl)。

解决方案 9:

我的看法是:你可以直接从https://github.com/scipy/scipy/releases安装整个(预编译的)SciPy

祝你好运!

解决方案 10:

对于python27
1、安装numpy + mkl(下载链接: http: //www.lfd.uci.edu/~gohlke/pythonlibs/) 2、安装scipy (同一个站点) OK!

解决方案 11:

英特尔现在免费为 Linux / Windows / OS X 提供 Python 发行版,称为“英特尔 Python 发行版”。

它是一个完整的 Python 发行版(例如包中包含 python.exe),其中包括一些针对英特尔的 MKL(数学核心函数库)编译的预安装模块,因此针对更快的性能进行了优化。

该发行版包括 NumPy、SciPy、scikit-learn、pandas、matplotlib、Numba、tbb、pyDAAL、Jupyter 等模块。缺点是升级到较新版本的 Python 有点晚。例如,截至今天(2017 年 5 月 1 日),该发行版提供 CPython 3.5,而 3.6 版本已经发布。但如果您不需要新功能,它们应该完全没问题。

解决方案 12:

安装 scikit-fuzzy 时我也遇到了同样的错误。我按如下方式解决了错误:

  1. 安装Numpy,一个 whl 文件

  2. 安装Scipy,再次安装 whl 文件

根据 python 版本选择文件,例如 python3 选择 amd64 文件,python27 选择 win32 文件

  1. 然后pip install --user skfuzzy

我希望它对你有用

解决方案 13:

解决方案:

  1. 正如许多答案中所述,从http://www.lfd.uci.edu/~gohlke/pythonlibs/下载NumPy和SciPy whl并使用

pip install <whl_location>
  1. 从源代码构建 BLAS/LAPACK

  2. 使用Miniconda。

参考:

  1. ScikitLearn 安装

  2. 为 scipy 安装 BLAS 和 LAPACK 的最简单方法是什么?

解决方案 14:

这样做,它为我解决了问题
pip install -U scikit-learn

解决方案 15:

我在尝试安装 scipy 时遇到了同样的错误,同时还安装了 Visual Studio C++、numpy 等。我的问题是我刚刚安装了 Python 3.9。

我删除了版本 3.9.0 并降级到版本 3.8.6,并且 scipy 安装没有问题。

解决方案 16:

使用http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy上的资源 可以解决问题。但是,您应该注意版本兼容性。尝试了几次之后,我最终决定卸载 python,然后安装新版本的 python 以及 numpy,然后安装 scipy,这解决了我的问题。

解决方案 17:

安装英特尔的 python 发行版https://software.intel.com/en-us/intel-distribution-for-python

python 的发行版最好首先包含它们

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   1590  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1361  
  信创产品在政府采购中的占比分析随着信息技术的飞速发展以及国家对信息安全重视程度的不断提高,信创产业应运而生并迅速崛起。信创,即信息技术应用创新,旨在实现信息技术领域的自主可控,减少对国外技术的依赖,保障国家信息安全。政府采购作为推动信创产业发展的重要力量,其对信创产品的采购占比情况备受关注。这不仅关系到信创产业的发展前...
信创和国产化的区别   18  
  信创,即信息技术应用创新产业,旨在实现信息技术领域的自主可控,摆脱对国外技术的依赖。近年来,国货国用信创发展势头迅猛,在诸多领域取得了显著成果。这一发展趋势对科技创新产生了深远的推动作用,不仅提升了我国在信息技术领域的自主创新能力,还为经济社会的数字化转型提供了坚实支撑。信创推动核心技术突破信创产业的发展促使企业和科研...
信创工作   18  
  信创技术,即信息技术应用创新产业,旨在实现信息技术领域的自主可控与安全可靠。近年来,信创技术发展迅猛,对中小企业产生了深远的影响,带来了诸多不可忽视的价值。在数字化转型的浪潮中,中小企业面临着激烈的市场竞争和复杂多变的环境,信创技术的出现为它们提供了新的发展机遇和支撑。信创技术对中小企业的影响技术架构变革信创技术促使中...
信创国产化   19  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用