[FLASH-USERS] Compilation error with Parallel HDF5 1.10.5
Klaus Weide
klaus at flash.uchicago.edu
Fri Mar 8 15:46:25 EST 2019
On Wed, 6 Mar 2019, Mattia Cipriani wrote:
> Dear FLASH Users,
>
> I am compiling FLASH4.5 code by using OpenMPI 3.1.2 and HDF5 1.10.5, to take advantage of OpenMPI for parallel data output.
> I have the following issue:
>
> /usr/mpi/gcc730/openmpi-3.1.2/bin/mpicc -I/afs/enea.it/project/iner/SIMULAZIONI/software/build/hdf5/include -DH5_USE_16_API -I/afs/enea.it/project/iner/SIMULAZIONI/software/build/hypre/include -ggdb -c -O2 -Wuninitialized -D_FORTIFY_SOURCE=2 -DFLASH_3T -DMAXBLOCKS=1000 -DNXB=16 -DNYB=16 -DNZB=1 -DN_DIM=2 io_h5_report_xfer_method.c
> io_h5_report_xfer_method.c: In function ‘io_h5_report_xfer_method’:
> io_h5_report_xfer_method.c:105:26: error: ‘H5D_MPIO_FILTERS’ undeclared (first use in this function)
> if (global_cause & H5D_MPIO_FILTERS) {
> ^
> io_h5_report_xfer_method.c:105:26: note: each undeclared identifier is reported only once for each function it appears in
> make: *** [io_h5_report_xfer_method.o] Error 1
To avoid this problem, apply the attached patch to the file
source/IO/IOMain/hdf5/io_h5_report_xfer_method.c
Klaus
-------------- next part --------------
Index: io_h5_report_xfer_method.c
===================================================================
--- io_h5_report_xfer_method.c (revision 26498)
+++ io_h5_report_xfer_method.c (revision 26499)
@@ -102,9 +102,14 @@
if (global_cause & H5D_MPIO_NOT_CONTIGUOUS_OR_CHUNKED_DATASET) {
ADD_CAUSE_TO_STR("H5D_MPIO_NOT_CONTIGUOUS_OR_CHUNKED_DATASET ");
}
+#if (H5_VERSION_LE(1,10,0))
+ /* In HDF5 versions starting at 1.10.2(?) there is reportedly
+ H5D_MPIO_NO_COLLECTIVE_MAX_CAUSE instead, not sure whether
+ that has the same meaning or functionality... */
if (global_cause & H5D_MPIO_FILTERS) {
ADD_CAUSE_TO_STR("H5D_MPIO_FILTERS ");
}
+#endif
printf(" [%s]: Dataset '%s' - no collective I/O because %s\n",
__FILE__, datasetName, cause_str);
More information about the flash-users
mailing list