库未加载:/usr/local/lib/libhdf5.9.dylib

Library not loaded: /usr/local/lib/libhdf5.9.dylib

在 "brew upgrade" 之后,我发现我无法在我的 Mac 上使用 Pytables。

import tables as tb 
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-29-57032f570037> in <module>()
----> 1 import tables as tb

/usr/local/lib/python2.7/site-packages/tables/__init__.py in <module>()
 80 
 81 # Necessary imports to get versions stored on the cython extension
 ---> 82 from tables.utilsextension import (
 83     get_pytables_version, get_hdf5_version, blosc_compressor_list,
 84     blosc_compcode_to_compname_ as blosc_compcode_to_compname,

 ImportError: dlopen(/usr/local/lib/python2.7/site-packages/tables/utilsextension.so, 2): Library not loaded: /usr/local/lib/libhdf5.9.dylib
 Referenced from: /usr/local/lib/python2.7/site-packages/tables/utilsextension.so
 Reason: image not found

我发现目录中没有 libhdf5.9.dylib,而是 libhdf5.10.dylib 现在。

我可以毫无问题地卸载和安装 hdf5,我还尝试重新安装 tables

我不确定如何解决这个问题。

通过安装来自 GitHub 的开发版本解决了问题:

pip install git+https://github.com/PyTables/PyTables.git@develop#egg=tables

您需要重新安装 tables。如果您使用的是最新版本的 pip,您还需要确保您没有使用针对旧 libhdf 构建的缓存版本的 pytables。您可以使用 pip install -U --force-reinstall --no-binary tables tables.

执行此操作