Bug#839784: libhdf5-dev: pkg-config file references ONLY the C library

Dima Kogan dkogan at debian.org
Tue Oct 4 20:48:46 UTC 2016


Package: libhdf5-dev
Version: 1.8.16+docs-8+b1
Severity: normal

Hi.

The libhdf5-dev package ships a single .pc file: hdf5-serial.pc, which
contains

  Libs: -L/usr/lib/x86_64-linux-gnu/hdf5/serial -lhdf5

This serves to link in the C interface to the HDF5 library by adding to
the LDLIBS in GNU Make:

  $(shell pkg-config --libs hdf5-serial)

If, however, you have a project that uses the C++ interface, then you
need something uglier:

  $(shell pkg-config --libs-only-L hdf5-serial) -lhdf5_cpp

This is also bad because it goes against the whole purpose of
pkg-config: the user now has to know about the internal layout of the
package.

It looks like we have 6 flavors of shared objects for hdf5-serial:

  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so
  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_cpp.so
  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_fortran.so
  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_hl.so
  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_hl_cpp.so
  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5hl_fortran.so

Would it make sense to ship a .pc file for each one?

Thanks!



More information about the Pkg-grass-devel mailing list