Skip to main content
 首页 » 编程设计

python之让 HDF5 与 pyTables 一起工作的问题

2025年05月04日9grandyang

我一直在努力尝试在 OSX 10.8 上设置 pyTables。我正在运行 Enthought python 发行版,安装了带有 PIP 的 pyTables 和 numexpr,并使用 Homebrew 安装了 HDF5 包。

但是,当我尝试在 python 中导入表时,出现以下错误:

In [7]: import tables 
--------------------------------------------------------------------------- 
ImportError                               Traceback (most recent call last) 
<ipython-input-7-389ecae14f10> in <module>() 
----> 1 import tables 
 
/Users/MYNAME/src/tables/tables/__init__.py in <module>() 
     28  
     29 # Necessary imports to get versions stored on the Pyrex extension 
---> 30 from tables.utilsExtension import getPyTablesVersion, getHDF5Version 
     31  
     32  
 
ImportError: dlopen(/Users/MYNAME/src/tables/tables/utilsExtension.so, 2): Symbol not         found: _H5E_CALLBACK_g 
  Referenced from: /Users/MYNAME/src/tables/tables/utilsExtension.so 
  Expected in: flat namespace 
 in /Users/MYNAME/src/tables/tables/utilsExtension.so 

我试过使用我的路径变量,因为我认为 Homebrew 软件目录可能被覆盖或其他原因,但情况似乎并非如此。对正在发生的事情有什么想法吗?

请您参考如下方法:

我遇到了同样的问题。我下载了tra hdf5 1.8.4版本,从源码安装,然后下载pytables 2.4的源码版本,不是3.0.0,使用命令安装: “sudo python setup.py install --hdf5=download_folder/hdf5-1.8.4/hdf5” 其中 download_folder 是您下载 hdf5 源的文件夹。 神奇之处在于安装 pytables 2.4,而不是 3.0。