HDF5 在 brew update & upgrade 后出现问题

HDF5 makes a problem after brew update & upgrade

我是 M1 用户,目前使用 python 3.9.10 编码。

我尝试更新库。使用自制软件,特别是 python 3.9.12 和 HDF5。我还重新安装了 h5py。这里我试过了。

brew update & upgrade
brew reinstall hdf5
export HDF5_DIR=/opt/homebrew/Cellar/hdf5/1.13.0/
pip install h5py --upgrade --no-dependencies --force

所有升级已完成。但是我在尝试代码的时候遇到了这样的错误信息,根据之前的构建环境是没有错误的。

>     import h5py
>  File "/opt/homebrew/lib/python3.9/site-packages/h5py/__init__.py", line 25, in  <module>
>    from . import _errors
> ImportError: dlopen(/opt/homebrew/lib/python3.9/site-packages/h5py/_errors.cpython-39- darwin.so, 0x0002): Library not loaded: /opt/homebrew/opt/hdf5/lib/libhdf5.300.dylib
>  Referenced from: /opt/homebrew/lib/python3.9/site-packages/h5py/_errors.cpython-39-darwin.so
>  Reason: tried: '/opt/homebrew/opt/hdf5/lib/libhdf5.300.dylib' (no such file), '/usr/local/lib/libhdf5.300.dylib' (no such file), '/usr/lib/libhdf5.300.dylib' (no such file), '/opt/homebrew/Cellar/hdf5/1.12.1_1/lib/libhdf5.300.dylib' (no such file), '/usr/local/lib/libhdf5.300.dylib' (no such file), '/usr/lib/libhdf5.300.dylib' (no such file)

如上所示,hdf5_dir固定在1.12。1_1在brew upgrade之后,即使我已经安装了1.13.0,直到尝试[=12才出现问题=]. 请帮助我,如果有人知道是什么导致了问题以及如何解决它。

提前致谢。

以下对我有用。首先,卸载 h5pyhdf5(也删除了我的 pip 缓存,但不确定这是否相关)。然后 运行

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