[Paraview-developers] Advice on compiling Superbuild with parallel HDF5

Nicolas Edh nicolas.forsberg at gmail.com
Sun Feb 21 15:24:53 EST 2016


Hi,

I'm currently writing a reader plugin for paraview that requires hdf5 to be
built with parallel support. I have successfully built hdf5 with parallel
support outside the superbuild but I can't get superbuild to use those
libraries nor can I figure out a way to tell the super build to compile
HDF5 with parallel support.

I'm hoping for advice on how to either point the super build to my own
version of hdf5 or enabling parallel support for the version super build
uses.

Here's what I've tried so far:

Compiling hdf5 (1.8.16) outside paraview, using cmake and enabling parallel
support wasn't very complicated. You just have to set the following
variables:

-DHDF5_ENABLE_PARALLEL:BOOL=ON
-DMPIEXEC_MAX_NUMPROCS:STRING=4
-DHDF5_BUILD_CPP_LIB:BOOL=OFF
-DBUILD_SHARED_LIBS:BOOL=ON

I have tried defining those variables with ccmake when configuring
Superbuild. Then turn on paraview and hdf5 and leave everything else at the
default. HDF gets built but it seems like the variables aren't passed
along. Parrallel support is not enabled, a "grep PARALLEL" on H5pubconf.h
should return:
#define H5_HAVE_PARALLEL 1
but returns
#undef H5_HAVE_PARALLEL

I'm think I'm missing something really simple here but I'm not used to
cmake. Any advice is greatly appreciated.


My second set of tries was to point the superbuild to my own compiled
version of HDF5 but I can't get cmake to find the library. I'm using ccmake
and I only enable paraview and hdf5 then set USE_SYSTEM_hdf5=ON, hit c and
ccmake will ask for HDF5_ROOT_DIR and HDF5_INCLUDE_DIRS. I've tried
pointing the ROOT_DIR where I installed hdf5 but I get an error message:

CMake Error at
/usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:388
(_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake/Modules/FindHDF5.cmake:398
(find_package_handle_standard_args)
  VTK/CMake/FindHDF5.cmake:6 (include)
  VTK/CMake/vtkModuleMacros.cmake:843 (find_package)
  VTK/ThirdParty/hdf5/CMakeLists.txt:1 (vtk_module_third_party)


So I tried to set HDF5_LIBRARIES to the lib directory and HDF_INCLUDE_DIRS
to where HDF5 put hdf5-config.cmake but then ccmake fails while configuring
with:

 CMake Error at  .../installs/hdf5-cmake/share/cmake/FindHDF5.cmake:85
(include):
   include could not find load file:

     ..../installs/hdf5-cmake/hdf5-config.cmake


Which I consider a bit weird since I've set
HDF5_INCLUDE_DIRS=.../installs/hdf5-cmake/share/cmake
which is where hdf5-config.cmake is.

Any advice is greatly appreciated.

Best Regards
Nicolas Edh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview-developers/attachments/20160221/8b08d583/attachment.html>


More information about the Paraview-developers mailing list