HDF5 does not compile with OpenMPI 4.0.0


#1

Hi,

Apparently HDF5 uses some MPI functions/constants that have been deprecated since MPI-2, for instance MPI_Type_extent. These functions were apparently still available in OpenMPI until version 4.0.0, where they were removed. So right now it is not possible to compile HDF5 with OpenMPI 4.0.0.

Thanks,

Matthieu


#2

Hi Matthieu,

There is a bug report for this issue (HDFFV-10566). A user gave me a patch to resolve the problem, which I have attached (patch.diff). We haven’t fully tested the patch, but hopefully it will help you build.

Sorry about that!
-Barbara
patch.diff (4.8 KB)


#3

@bljones I’m assuming this is a 1.10 patch file, right? I tried applying it to my 1.8.21 install and it was not happy.


#4

Hello!

This issue has been fixed in the develop branch on Bitbucket, and will be in both the HDF5-1.10.5 and 1.12.0 releases. The deprecated MPI-1 functions were replaced with their MPI-2 equivalents in HDF5. The parallel flush test fails, so for now that can be ignored, but this should be fixed for the 1.10.5 and 1.12.0 releases.

Also, if you need to build with an older version of the library, you can
use the --enable-mpi1-compatibility option when building OpenMPI 4.0 to
make that work.

-Barbara