hdf5 icon indicating copy to clipboard operation
hdf5 copied to clipboard

1.10.7: parallel MPI: CMake: failed to compile ph5diff

Open scivision opened this issue 3 years ago • 0 comments

HDF5 builds with MPI almost completely except for ph5diff, on CentOS 8 with either GCC 8.5 or Intel oneAPI 2021.3.

One change I made is adding the line to "src/HDF5/tools/src/h5diff/ph5diff_main.c":

include "mpi.h"

Which fixes missing MPI_COMM_WORLD errors.

However I am left with linker error:

CMakeFiles/ph5diff.dir/ph5diff_main.c.o: In function `h5diff_exit':
ph5diff_main.c:(.text+0x12a): undefined reference to `phdiff_dismiss_workers'

command line on CentOS 8 machine is below. The -Wl,-rpath,"\$ORIGIN/../lib:\$ORIGIN/" seems to not be taking effect--this seems to be a key clue.

/usr/bin/cc   -std=c99  -fstdarg-opt -w -fmessage-length=0 -O3 -DNDEBUG  -Wl,-rpath  -Wl,/usr/lib64/openmpi/lib  -Wl,--enable-new-dtags  -L/usr/lib64/openmpi/lib  CMakeFiles/ph5diff.dir/h5diff_common.c.o CMakeFiles/ph5diff.dir/ph5diff_main.c.o -o ../../../bin/ph5diff  -Wl,-rpath,"\$ORIGIN/../lib:\$ORIGIN/" ../../../bin/libhdf5_tools.a ../../../bin/libhdf5.a /usr/lib64/openmpi/lib/libmpi.so -lm -ldl /usr/lib64/libz.so -ldl /usr/lib64/libz.so /usr/lib64/openmpi/lib/libmpi.so

scivision avatar Jul 01 '21 21:07 scivision