Package: libhdf5-openmpi-dev
Version: 1.10.6+repack-2
Severity: normal

We've set up libhdf5-openmpi-dev (and libhdf5-mpich-dev) to use the
alternatives mechanism to configure a symlink from a generic pkgconfig
file hdf5-mpi.pc to the specific hdf5-openmpi.pc (or hdf5-mpich.pc).
This allows client programs to get libs with 'pkg-config --libs hdf5-mpi'
without needing to know which specific MPI implementation is being
used.

It's a good and useful service, I think we should keep it.

But we should document (or fix if possible) that this alternatives
mechanism is a little fragile, and sometimes the link needs to be
refresh with
  sudo dpkg-reconfigure libhdf5-openmpi-dev

What I mean is that sometimes the link seem to just disappear, so we get
  $ pkg-config --libs hdf5-mpi
  Package hdf5-mpi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `hdf5-mpi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'hdf5-mpi' found

It gets restored by 'dpkg-reconfigure libhdf5-openmpi-dev'
(update-alternative --config hdf5-mpi would also enable it to be reset).

I'm not sure why exactly the link is being lost or if it's feasible to
make the mechanism for it more robust. I presume it happens when
openmpi gets updated (e.g. recently updated to openmpi 4.0.4).
libhdf5-openmpi-dev.postinst of course is setting the alternatives
link, though I don't understand why the link would be lost just
because openmpi got upgraded.

Filing this bug so we can document and keep watch on the problem.
Again, the workaround is to run

  sudo dpkg-reconfigure libhdf5-openmpi-dev

(or dpkg-reconfigure libhdf5-mpich-dev)


-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.7.0-2-amd64 (SMP w/8 CPU threads)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_AU:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libhdf5-openmpi-dev depends on:
ii  libaec-dev                         1.0.4-1
ii  libhdf5-openmpi-103-1              1.10.6+repack-2
ii  libhdf5-openmpi-cpp-103-1          1.10.6+repack-2
ii  libhdf5-openmpi-fortran-102        1.10.6+repack-2
ii  libhdf5-openmpi-hl-100             1.10.6+repack-2
ii  libhdf5-openmpi-hl-cpp-100         1.10.6+repack-2
ii  libhdf5-openmpi-hl-fortran-100     1.10.6+repack-2
ii  libjpeg-dev                        1:2.0.5-1.1
ii  libjpeg62-turbo-dev [libjpeg-dev]  1:2.0.5-1.1
ii  libopenmpi-dev                     4.0.4-2
ii  zlib1g-dev                         1:1.2.11.dfsg-2

libhdf5-openmpi-dev recommends no packages.

Versions of packages libhdf5-openmpi-dev suggests:
pn  libhdf5-doc  <none>

-- no debconf information

Reply via email to