如何使用M1在MacOS上安装h5py(Keras需要)?

w6lpcovy  于 2023-03-30  发布在  Mac
关注(0)|答案(3)|浏览(225)

我有一台M1 MacBook。我已经使用pyenv安装了python 3.9.1,并且有pip 3版本21.0.1。我已经通过brew install hdf5安装了homebrew和hdf 5 1.12.0_1。
当我打字时

pip3 install h5py

我得到错误:

Requirement already satisfied: numpy>=1.19.3 in /Users/.../.pyenv/versions/3.9.1/lib/python3.9/site-packages (from h5py) (1.20.0)
Building wheels for collected packages: h5py
  Building wheel for h5py (PEP 517) ... error

  Loading library to get build settings and version: libhdf5.dylib
  error: Unable to load dependency HDF5, make sure HDF5 is installed properly
  error: dlopen(libhdf5.dylib, 6): image not found
  ----------------------------------------
  ERROR: Failed building wheel for h5py

我看到libhdf5.dylib存在于/opt/homebrew/opt/hdf5/lib中,所以我事先尝试了export LDFLAGS="-L/opt/homebrew/opt/hdf5/lib"export CPPFLAGS="-L/opt/homebrew/opt/hdf5/include",但它们没有帮助。
如何安装h5 py?
我实际上是安装h5 py作为安装Keras的必要条件。
谢谢!

gz5pxeao

gz5pxeao1#

这对我很有效:

$ brew install hdf5
$ export HDF5_DIR="$(brew --prefix hdf5)"
$ pip install --no-binary=h5py h5py
qqrboqgw

qqrboqgw2#

尝试使用conda安装h5py。对我来说很有效。

conda install h5py
erhoui1w

erhoui1w3#

以下是在macOS M1上安装hdf5的一些步骤。

第0步(可选):使用brew卸载hdf5(如果已安装)。

brew uninstal hdf5 --ignore-dependencies

步骤1:使用brew安装hdf5

arch -arm64 brew install hdf5

第二步:找到hdf5hdf5.h的目录。

sudo find / -iname "*hdf5.h*" # use sudo if possible

在我的笔记本电脑上,输出是

/usr/local/include/hdf5.h
/usr/local/Cellar/hdf5/1.12.2_2/include/hdf5.h
/usr/local/Cellar/opencv/4.7.0_2/include/opencv4/opencv2/flann/hdf5.h
/usr/local/Cellar/vtk/9.2.6/include/vtk-9.2/vtk_hdf5.h
/System/Volumes/Data/usr/local/include/hdf5.h
/System/Volumes/Data/usr/local/Cellar/hdf5/1.12.2_2/include/hdf5.h
/System/Volumes/Data/usr/local/Cellar/opencv/4.7.0_2/include/opencv4/opencv2/flann/hdf5.h
/System/Volumes/Data/usr/local/Cellar/vtk/9.2.6/include/vtk-9.2/vtk_hdf5.h

第三步:设置CPATHHDF5_DIR

export CPATH=$CPATH:/usr/local/include/:/usr/local/Cellar/hdf5/1.12.2_2/include

export HDF5_DIR=/usr/local/Cellar/hdf5/1.12.2_2

请注意,在您的笔记本电脑上,这些目录可能不同。

第四步:使用pip安装hdf5

arch -arm64 pip3.9 install hdf5

然后它成功完成安装。
如果我的回答对你有帮助,请投票。

相关问题