[已解决]在 Python 中为 h5py 构建 wheel 失败
[Solved] Failed building wheel for h5py in Python
错误“Failed building wheel for h5py”错误的发生有多种原因:
- 拥有过时版本的
pip
,setuptools
或wheel
. - 拥有不受
h5py
. - 安装了与
h5py
模块冲突的包。
ERROR: Failed building wheel for h5py Failed to build h5py ERROR: Could not build wheels for h5py, which is required to install pyproject.toml-based projects
pip
wheel
setuptools
以下是pip
在所有操作系统上升级的命令。
哪个命令有效取决于您的操作系统和 Python 版本。
# 👇️ if you have pip already installed pip install --upgrade pip # 👇️ if your pip is aliased as pip3 (Python 3) pip3 install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python -m pip install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python3 -m pip install --upgrade pip # 👇️ if you have easy_install easy_install --upgrade pip # 👇️ if you get a permissions error sudo easy_install --upgrade pip # 👇️ if you get a permissions error when upgrading pip pip install --upgrade pip --user # 👇️ upgrade pip scoped to the current user (if you get permissions error) python -m pip install --user --upgrade pip python3 -m pip install --user --upgrade pip # 👇️ Installing directly from get-pip.py (MacOS and Linux) curl https://bootstrap.pypa.io/get-pip.py | python # 👇️ if you get permissions issues curl https://bootstrap.pypa.io/get-pip.py | sudo python # 👇️ alternative for Ubuntu/Debian sudo apt-get update && apt-get upgrade python-pip # 👇️ alternative for Red Hat / CentOS / Fedora sudo yum install epel-release sudo yum install python-pip sudo yum update python-pip
现在pip
已经升级,尝试运行pip install h5py
命令。
pip install h5py pip3 install h5py python -m pip install h5py python3 -m pip install h5py # 👇️ for Anaconda conda install -c conda-forge h5py
如果错误未解决,请同时升级setuptools
和wheel
软件包。
pip install --upgrade setuptools wheel pip3 install --upgrade setuptools wheel python3 -m pip install --upgrade setuptools wheel
升级后尝试重新运行该pip install
命令。setuptools
wheel
如果这没有帮助,请尝试使用该
选项运行pip install
命令。--upgrade
pip install h5py --upgrade pip3 install h5py --upgrade python -m pip install h5py --upgrade python3 -m pip install h5py --upgrade
如果错误未解决,请尝试安装带有
--no-cache-dir
禁用缓存选项的软件包。
pip install h5py --no-cache-dir pip3 install h5py --no-cache-dir
如果这没有帮助,请使用该--pre
选项来包括包的预发布和开发版本。
pip install h5py --pre pip3 install h5py --pre python -m pip install h5py --pre python3 -m pip install h5py --pre
该--pre
选项使其pip
包含包的预发布和开发版本。默认情况下pip
只查找稳定版本。
wheel
如果错误未解决,请尝试运行带选项的pip install
命令
。--no-use-pep517
pip install --no-use-pep517 h5py pip3 install --no-use-pep517 h5py python -m pip install --no-use-pep517 h5py python3 -m pip install --no-use-pep517 h5py
如果您使用的是 Windows,请下载并安装一个.whl
以解决错误。
.whl
如果您使用的是 Windows ,请下载并安装文件
如果您使用的是 Windows,您还可以从https://www.lfd.uci.edu/~gohlke/pythonlibs/
网站下载合适的.whl
文件
。
首先,获取您的 Python 版本并检查您的 Python 安装是 64 位还是 32 位。
您可以通过打开 CMD 并输入 来做到这一点python
。
例如截图显示我的 Python 版本是 3.10,我的 Python 解释器是 64 位的。
现在,单击
https://www.lfd.uci.edu/~gohlke/pythonlibs/
链接,按CTRL + f
并搜索h5py
或单击
以下链接。
下载相应的.whl
文件。例如,我会下载以下文件。
h5py‑3.7.0‑cp310‑cp310‑win_amd64.whl
cp310
部分是版本 (Python 3.10),表示 64 位。 amd64
打开文件后,在文件所在的目录(例如C:\Users\Example\Downloads
)中打开 shell 并使用以下命令安装它pip
:
- 在资源管理器中打开包含该文件的目录。
- 在资源管理器中按下
Shift
并右键单击。
- 单击“在此处打开 PowerShell 窗口”。
- 运行以下命令。
pip install h5py‑3.7.0‑cp310‑cp310‑win_amd64.whl pip3 install h5py‑3.7.0‑cp310‑cp310‑win_amd64.whl
请确保.whl
正确指定文件名,因为您的 Python 版本可能会有所不同。
如果这没有帮助,请尝试创建一个虚拟环境。
创建虚拟环境
要解决“h5py 构建轮失败”错误:
- 创建一个虚拟环境。
- 激活虚拟环境。
- 在虚拟环境处于活动状态的情况下运行
pip install
命令。
# 👇️ use correct version of Python when creating VENV python3 -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ install the specific package in the virtual environment pip install h5py
如果该python3 -m venv venv
命令不起作用,请尝试以下 2 个命令:
python -m venv venv
py -m venv venv
确保根据您的操作系统和 shell 使用正确的命令来激活您的虚拟环境。
您的虚拟环境将使用用于创建它的 Python 版本。
检查包是否支持您的 Python 版本
当您尝试安装的包不适wheels
用于您的 Python 版本时,有时会出现错误“Failed building wheel for h5py”。
您可以使用命令检查您的 Python 版本python --version
。
python --version
您可以在包的 pypi 页面的下载文件部分检查包是否具有适用于特定 Python 版本的轮子。
cp310
“Built Distributions”下的文件名表示特定操作系统支持 Python 3.10 版。如果这些.whl
文件不适用于您的 Python 版本,您可以下载旧版本。
如果包不支持最新的 Python 版本,您可以下载包支持的特定 Python 版本。
“寻找特定版本”表中提供了不同的版本
。
如果出现提示,请确保勾选以下选项:
- 为所有用户安装启动器(推荐)
- 将 Python 添加到 PATH(这会将 Python 添加到您的 PATH 环境变量)
尝试在详细模式下运行 pip install
如果这些建议都没有帮助,请尝试pip install
在详细模式下运行命令。
pip install h5py -vvv pip3 install h5py -vvv python -m pip install h5py -vvv python3 -m pip install h5py -vvv
该-v
选项代表详细模式,最多可以使用 3 次。
当pip install
命令以详细模式运行时,命令会显示更多输出以及错误发生的方式。
结论
要解决错误“Failed building wheel for h5py”,请确保:
- 您没有
pip
,setuptools
或的过时版本wheel
。 - 您没有超出 支持的版本范围的 Python 版本
h5py
。