Bug#1078975: field3d: FTBFS against HDF5 1.14 - Needs -DH5_USE_110_API
Pierre Gruet
pgt at debian.org
Fri Nov 1 19:38:08 GMT 2024
Control: tags -1 patch
Hi,
On Sun, 18 Aug 2024 15:16:08 +0200 Gilles Filippini <pini at debian.org> wrote:
> Source: field3d
> Version: 1.7.3-4.1
> Severity: important
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA512
>
> Hi,
>
> The field3d package fails to build from source in a test rebuild
> against hdf5 1.14 currently in experimental:
>
> /<<PKGBUILDDIR>>/src/Field3DFileHDF5.cpp: In function ‘herr_t
Field3D::v1_7::InputFileHDF5::parsePartitions(hid_t, const char*, const
H5L_info2_t*, void*)’:
> /<<PKGBUILDDIR>>/src/Field3DFileHDF5.cpp:1138:31: error: too few
arguments to function ‘herr_t H5Oget_info_by_name3(hid_t, const char*,
H5O_info2_t*, unsigned int, hid_t)’
> 1138 | status = H5Oget_info_by_name(loc_id, itemName, &infobuf,
H5P_DEFAULT);
> In file included from /usr/include/hdf5/serial/H5Apublic.h:21,
> from /usr/include/hdf5/serial/hdf5.h:22,
> from /<<PKGBUILDDIR>>/src/Field3DFileHDF5.cpp:50:
> /usr/include/hdf5/serial/H5Opublic.h:541:15: note: declared here
> 541 | H5_DLL herr_t H5Oget_info_by_name3(hid_t loc_id, const char
*name, H5O_info2_t *oinfo, unsigned fields,
> | ^~~~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/src/Field3DFileHDF5.cpp: In function ‘herr_t
Field3D::v1_7::InputFileHDF5::parseLayers(hid_t, const char*, const
H5L_info2_t*, void*)’:
> /<<PKGBUILDDIR>>/src/Field3DFileHDF5.cpp:1178:32: error: too few
arguments to function ‘herr_t H5Oget_info_by_name3(hid_t, const char*,
H5O_info2_t*, unsigned int, hid_t)’
> 1178 | status = H5Oget_info_by_name (loc_id, itemName, &infobuf,
H5P_DEFAULT);
> /usr/include/hdf5/serial/H5Opublic.h:541:15: note: declared here
> 541 | H5_DLL herr_t H5Oget_info_by_name3(hid_t loc_id, const char
*name, H5O_info2_t *oinfo, unsigned fields,
> | ^~~~~~~~~~~~~~~~~~~~
> In file included from /<<PKGBUILDDIR>>/export/FieldMapping.h:52,
> from /<<PKGBUILDDIR>>/export/Field.h:57,
> from /<<PKGBUILDDIR>>/export/ClassFactory.h:51,
> from /<<PKGBUILDDIR>>/src/ClassFactory.cpp:44:
> /<<PKGBUILDDIR>>/export/Curve.h:133:17: warning: ‘template<class
_Arg, class _Result> struct std::unary_function’ is deprecated
[-Wdeprecated-declarations]
> 133 | public std::unary_function<std::pair<float, T>, bool>
> | ^~~~~~~~~~~~~~
> In file included from /usr/include/c++/14/bits/unique_ptr.h:38,
> from /usr/include/c++/14/memory:78,
> from /usr/include/boost/smart_ptr/scoped_ptr.hpp:23,
> from /usr/include/boost/scoped_ptr.hpp:13,
> from /<<PKGBUILDDIR>>/export/ClassFactory.h:47:
> /usr/include/c++/14/bits/stl_function.h:117:12: note: declared here
> 117 | struct unary_function
> | ^~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/export/Curve.h:148:17: warning: ‘template<class
_Arg, class _Result> struct std::unary_function’ is deprecated
[-Wdeprecated-declarations]
> 148 | public std::unary_function<std::pair<float, T>, bool>
> | ^~~~~~~~~~~~~~
> /usr/include/c++/14/bits/stl_function.h:117:12: note: declared here
> 117 | struct unary_function
> | ^~~~~~~~~~~~~~
> make[3]: *** [CMakeFiles/Field3D.dir/build.make:121:
CMakeFiles/Field3D.dir/src/Field3DFileHDF5.cpp.o] Error 1
>
>
> Adding -DH5_USE_110_API to CFLAGS and CXXFLAGS should fix the problem.
Indeed, altering debian/rules by adding
# HDF5 1.14.x flags
export DEB_CFLAGS_MAINT_APPEND = -DH5_USE_110_API
export DEB_CXXFLAGS_MAINT_APPEND = -DH5_USE_110_API
just before the "%:" line fixed the build.
>
> Best,
> _g.
>
Best,
--
Pierre
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-phototools-devel/attachments/20241101/ae0a867f/attachment.sig>
More information about the Pkg-phototools-devel
mailing list