Bug#934875: libhdf5-openmpi-dev: pkg-config cflags give wrong mpi include paths

Drew Parsons dparsons at debian.org
Tue Aug 20 15:09:00 BST 2019


On 2019-08-20 20:58, Gilles Filippini wrote:
> Hi,
> 
> On Fri, 16 Aug 2019 12:34:56 +0800 Drew Parsons <dparsons at debian.org> 
> wrote:
>> Package: libhdf5-openmpi-dev
>> Version: 1.10.4+repack-10
>> Severity: normal
>> 
>> hdf5-openmpi.pc provides CFLAGS for hdf5 as
>>   -I/usr/include/openmpi -I/usr/include/hdf5/openmpi
>> 
>> But /usr/include/openmpi is the wrong path. MPI header files are
>> multiarch, so in
>>   -I/usr/lib/x86_64-linux-gnu/openmpi/include  
>> -I/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi
>> (for amd64).
>> 
>> The same applies to hdf5-mpich.
> 
> As I understand it hdf5-mpich.pc is correct:
> $ pkg-config --cflags --libs hdf5-mpich
> -I/usr/include/hdf5/mpich -I/usr/include/x86_64-linux-gnu/mpich
> -L/usr/lib/x86_64-linux-gnu/hdf5/mpich -lhdf5 -Wl,-z,relro -lmpich -lm
> -lbacktrace -lpthread -lrt

Ah, you are correct, hdf5-mpich already has the multiarch mpi include 
dir.  I checked that libmpich-dev provided it multiarch, and had assumed 
libhdf5-mpich-dev had the same problem as libhdf5-openmpi-dev but hadn't 
confirmed it.


> And hdf5-openmpi.pc only needs 'Requires: ompi' with no other
> reference to openmpi CFLAGS and LIBS:
> Name: HDF5
> Description: Hierarchical Data Format 5 (HDF5) - OpenMPI version
> Version: @VERSION@
> Requires: ompi
> Cflags: -I/usr/include/hdf5/openmpi
> Libs: -L/usr/lib/@MULTIARCH@/hdf5/openmpi -lhdf5
..
> Do we agree?

Yes, that looks good. Requires: ompi brings in the correct openmpi 
flags.  Makes it consistent with hdf5-mpich.pc too, which already had 
Requires: mpich.

Thanks Gilles.

Drew



More information about the Pkg-grass-devel mailing list