HDF5 библиотека и ошибка несоответствия заголовка
Я использую Anaconda на Ubuntu x64. Когда я запускаю простую программу на Python, я получаю это сообщение об ошибке и дамп ядра [python]. Я видел другие вопросы со схожими проблемами, но все ответы, которые я вижу, не решают мою проблему. Я попытался удалить и переустановить h5py с обоими pip
а также conda
, но я получаю ту же ошибку:
idf@DellInsp:~/Documents/Projects/python3$ python3 testtables.py
С этим кодом внутри testtables.py
import tables
tables.test()
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PyTables version: 3.2.2
HDF5 version: 1.8.11
NumPy version: 1.10.1
Numexpr version: 2.4.4 (not using Intel's VML/MKL)
Zlib version: 1.2.8 (in Python interpreter)
Blosc version: 1.4.4 (2015-05-05)
Blosc compressors: blosclz (1.0.2.1), lz4 (1.2.0), lz4hc (1.2.0), snappy (1.1.1), zlib (1.2.8)
Cython version: 0.23.4
Python version: 3.5.0 |Anaconda 2.4.0 (64-bit)| (default, Oct 19 2015, 21:57:25)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]
Platform: Linux-3.19.0-39-lowlatency-x86_64-with-debian-jessie-sid
Byte-ordering: little
Detected cores: 4
Default encoding: utf-8
Default FS encoding: utf-8
Default locale: (en_US, UTF-8)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Performing only a light (yet comprehensive) subset of the test suite.
If you want a more complete test, try passing the --heavy flag to this script
(or set the 'heavy' parameter in case you are using tables.test() call).
The whole suite will take more than 4 hours to complete on a relatively
modern CPU and around 512 MB of main memory.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/home/idf/anaconda3/lib/python3.5/site-packages/tables/filters.py:292: FiltersWarning: compression library ``bzip2`` is not available; using ``zlib`` instead
% (complib, default_complib), FiltersWarning)
/home/idf/anaconda3/lib/python3.5/site-packages/tables/filters.py:292: FiltersWarning: compression library ``lzo`` is not available; using ``zlib`` instead
% (complib, default_complib), FiltersWarning)
/home/idf/anaconda3/lib/python3.5/site-packages/tables/atom.py:570: DeprecationWarning: inspect.getargspec() is deprecated, use inspect.signature() instead
for arg in inspect.getargspec(self.__init__)[0]
Warning! ***HDF5 library version mismatched error***
The HDF5 header files used to compile this application do not match
the version used by the HDF5 library to which this application is linked.
Data corruption or segmentation faults may occur if the application continues.
This can happen when an application was compiled by one version of HDF5 but
linked with a different version of static or shared HDF5 library.
You should recompile the application or check your shared library related
settings such as 'LD_LIBRARY_PATH'.
You can, at your own risk, disable this warning by setting the environment
variable 'HDF5_DISABLE_VERSION_CHECK' to a value of '1'.
Setting it to 2 or higher will suppress the warning messages totally.
Headers are 1.8.11, library is 1.8.15
SUMMARY OF THE HDF5 CONFIGURATION
=================================
General Information:
-------------------
HDF5 Version: 1.8.15-patch1
Configured on: Wed Oct 14 16:46:37 CDT 2015
Configured by: ilan@centos5x64.corp.continuum.io
Configure mode: production
Host system: x86_64-unknown-linux-gnu
Uname information: Linux centos5x64.corp.continuum.io 2.6.18-400.1.1.el5 #1 SMP Thu Dec 18 00:59:53 EST 2014 x86_64 x86_64 x86_64 GNU/Linux
Byte sex: little-endian
Libraries: shared
Installation point: /home/ilan/minonda/envs/_build
Compiling Options:
------------------
Compilation Mode: production
C Compiler: /usr/bin/gcc ( gcc (GCC) 4.1.2 20080704 )
CFLAGS:
H5_CFLAGS: -std=c99 -pedantic -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline -Wno-long-long -Wfloat-equal -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wdisabled-optimization -Wformat=2 -Wunreachable-code -Wendif-labels -Wdeclaration-after-statement -Wold-style-definition -Winvalid-pch -Wvariadic-macros -Wnonnull -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wunused-macros -Wunsafe-loop-optimizations -Wc++-compat -Wvolatile-register-var -O3 -fomit-frame-pointer -finline-functions
AM_CFLAGS:
CPPFLAGS:
H5_CPPFLAGS: -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE -D_POSIX_C_SOURCE=200112L -DNDEBUG -UH5_DEBUG_API
AM_CPPFLAGS: -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
Shared C Library: yes
Static C Library: no
Statically Linked Executables: no
LDFLAGS:
H5_LDFLAGS:
AM_LDFLAGS:
Extra libraries: -lrt -lz -ldl -lm
Archiver: ar
Ranlib: ranlib
Debugged Packages:
API Tracing: no
Languages:
----------
Fortran: no
C++: yes
C++ Compiler: /usr/bin/g++ ( g++ (GCC) 4.1.2 20080704 )
C++ Flags:
H5 C++ Flags:
AM C++ Flags:
Shared C++ Library: yes
Static C++ Library: no
Features:
---------
Parallel HDF5: no
High Level library: yes
Threadsafety: no
Default API Mapping: v18
With Deprecated Public Symbols: yes
I/O filters (external): deflate(zlib)
MPE: no
Direct VFD: no
dmalloc: no
Clear file buffers before write: yes
Using memory checker: no
Function Stack Tracing: no
Strict File Format Checks: no
Optimization Instrumentation: no
Bye...
Aborted (core dumped)
idf@DellInsp:~/Documents/Projects/python3$
3 ответа
После нескольких попыток удаление, а затем повторная установка решили проблему:
pip uninstall h5py
pip install h5py
Я удалил затем установленную версию последней версии Anaconda. Это решило эту проблему.
У меня тоже была такая же ошибка. Я пытался использовать пакет Debian по умолчанию libhdf5-dev. Я бы посоветовал обновить debi / pip. Вы должны найти подходящую версию здесь: https://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.15-patch1/src/ и собрать ее из исходного кода. как только у вас это есть
tar -xvf hdf5-1.8.15-patch1
cd hdf5-1.8.15-patch1
./configure --prefix=/usr/local/hdf5
make
make check
make install
make check-install
pip install h5py
Обратите внимание, что это можно сделать и с другими версиями hdf5. Это как раз та, которая соответствует версии из репозиториев pip.