Package: hdf5-filter-plugin Version: 0.0~git20221111.49e3b65-2 Severity: serious Tags: patch
Hello, hdf5 cannot load the plugin dynamically: >>> import h5py >>> h5py.h5z.filter_avail(32004) False This is because the library cannot be loaded due to missing HDF5 symbols: $ python3 Python 3.10.8 (main, Nov 4 2022, 09:21:25) [GCC 12.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import ctypes >>> lib = ctypes.CDLL("/usr/lib/x86_64-linux-gnu/hdf5/serial/plugins/libh5lz4.so") Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python3.10/ctypes/__init__.py", line 374, in __init__ self._handle = _dlopen(self._name, mode) OSError: /usr/lib/x86_64-linux-gnu/hdf5/serial/plugins/libh5lz4.so: undefined symbol: H5E_PLINE_g I filed a PR upstream that fixes the problem: https://github.com/nexusformat/HDF5-External-Filter-Plugins/pull/27 I'm attaching the corresponding patch. Thanks, Enrico -- System Information: Debian Release: bookworm/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.0.0-4-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8), LANGUAGE=en_IE:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages hdf5-filter-plugin depends on: ii libbz2-1.0 1.0.8-5+b1 ii libc6 2.36-6 ii libhdf5-103-1 1.10.8+repack-4 ii liblz4-1 1.9.4-1 hdf5-filter-plugin recommends no packages. hdf5-filter-plugin suggests no packages.
commit 3d93e1821dd10962f4477d8b3615024cf10f4cc6 Author: Enrico Zini <enr...@enricozini.org> Date: Wed Dec 7 12:19:17 2022 +0100 Added missing libraries diff --git a/LZ4/src/CMakeLists.txt b/LZ4/src/CMakeLists.txt index b5bf34b..1823eff 100644 --- a/LZ4/src/CMakeLists.txt +++ b/LZ4/src/CMakeLists.txt @@ -1,7 +1,7 @@ set(SOURCES H5Zlz4.c lz4_h5plugin.c) set(INCLUDE_DIRS ${HDF5_INCLUDE_DIRS} ${LZ4_INCLUDE_DIRS}) -set(LINK_LIBS ${LZ4_LIBRARIES}) +set(LINK_LIBS ${LZ4_LIBRARIES} ${HDF5_LIBRARIES}) if(CMAKE_SYSTEM_NAME MATCHES Windows) #