在 Windows 10 上使用 pip 安装适用于 Python 3.7 的 numpy
- 2025-04-10 09:46:00
- admin 原创
- 17
问题描述:
我在我的 Windows 10 笔记本电脑上安装了 Python 3.7,因为它已于今天(2018 年 6 月 28 日)正式发布。然后我尝试使用 pip 安装 numpy 包
pip install numpy
安装继续但最终失败并出现以下错误:
source = func(extension, build_dir)
File "numpycoresetup.py", line 675, in get_mathlib_info
raise RuntimeError("Broken toolchain: cannot link a simple C program")
RuntimeError: Broken toolchain: cannot link a simple C program
----------------------------------------
Command ""c:program filespython37python.exe" -u -c "import setuptools, tokenize;__file__='C:\\Users\\pcheg\\AppData\\Local\\Temp\\pip-install-7wjkw5wn\\numpy\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('
', '
');f.close();exec(compile(code, __file__, 'exec'))" install --record C:UserspchegAppDataLocalTemppip-record-uhj8233finstall-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:UserspchegAppDataLocalTemppip-install-7wjkw5wn
umpy\n
关于如何解决此安装错误,您有什么想法吗?谢谢。
解决方案 1:
如果没有正确的构建设置,在 Windows 上安装 NumPy 是一个常见问题。相反,我总是去 Christoph Gohlke 的网站下载可以安装在您计算机上的轮子。Christoph 慷慨地自己用正确的构建环境构建了库,并将它们发布在他的网站上。这些是专门为 Windows 制作的预编译轮子。我发现 Christoph Gohlke 的预编译轮子网站是在 Windows 上安装 NumPy 和 SciPy 包的最佳方式。
目前,Christoph Gohlke 将这些轮子托管在他的 Github 页面上,网址为:https://github.com/cgohlke/numpy-mkl-wheels/
访问发布页面。在最新的部分中,请务必单击“显示所有资产”链接以查看他构建的所有轮子,包括 NumPy 和 SciPy。
右键单击专门用于您计算机的版本并下载。例如,numpy-1.26.3-cp311-cp311-win_amd64.whl
表示这是 NumPy 1.26.3、Python 3.11、Windows 64 位。
下载完成后,使用pip
安装轮子:
pip install numpy-1.26.3-cp311-cp311-win_amd64.whl
假设您在保存 wheel 文件的同一目录中运行该命令。在 Releases 页面上,根据适合您环境的适当 Python、NumPy 和位版本搜索专门用于您的机器的文件名并下载该文件,然后pip install
按上述方式运行。
这些说明现在已经过时了 - 保留这些说明以促进繁荣
首先,pipwin
从 PyPI 安装,它将安装一个类似于的实用程序,pip
但它会从他的网站下载您感兴趣的实际包,然后用来pipwin install
安装您想要的包。
首先要做的事情:
pip install pipwin
安装完成后,您可以执行以下操作:
pipwin install numpy
这将在您的系统上安装最新版本的 NumPy。这样您就不必专门搜索适合您特定 Python 版本的 NumPy 版本。
解决方案 2:
从 2021 年 11 月 24 日起,最新的 numpy 至少需要 Python 3.8
注意:这可能不是最初提出的问题,但它可能对来这里的任何人有所帮助。
要使用 Python 3.7,您可以使用的最新 numpy 是 v1.21.4。因此,要安装它,请使用:
pip install numpy==1.21.4
如果你写的需求希望兼容python 3.7,那么可以使用numpy<=1.21.4
编辑:2021 年 12 月 20 日,numpy 发布支持 Python 3.7 的 1.21.5 版本
从评论部分来看,@sam 表示,numpy 1.21.5 支持 Python 3.7。它是在 1.22.0rc1(原帖撰写时的最新 numpy 版本)之后发布的,仅支持 Python 3.8++。
从这次经验中吸取的教训是,最好使用<
,
pip install numpy<1.22.0
或者
install_requires = [
"numpy<1.22.0", # lates version to support python 3.7
],
编辑:1.21.6
于 2022 年 4 月 12 日发布。
解决方案 3:
对于 Windows,当您安装 Python 3 中的包时输入:
py -m pip install [packagename]
OR
py -m pip install numpy
解决方案 4:
你可能缺少 C 编译器。如果 numpy 尚未提供预构建的 wheel,则需要安装编译器。此网站显示了你需要安装的编译器。对于 3.7,我假设它仍然是 14.0,因此你应该安装Microsoft Build Tools for Visual Studio 2017。
如果有效请告诉我。
扫码咨询,免费领取项目管理大礼包!