Install of HDF5 copies third-party libraries into installation directory


#1

I’ve installed HDF5 1.10.5 via the following commands:

cmake -DCMAKE_INSTALL_PREFIX=../../install-XXXXX/hdf5-1.10.5 -DHDF5_ENABLE_LARGE_FILE=ON -DHDF5_ENABLE_PARALLEL=ON -DHDF5_BUILD_CPP_LIB:BOOL=OFF ../../sources/hdf5-1.10.5/
make
make install

The versions of the tools I used for installation are as follows:

CMake version: 3.14.6
Compiler: Intel, version 2017.1.132
MPI: Intel MPI, version 2018.1.163

Inside the …/…/install-XXXXX/hdf5-1.10.5/lib directory are several libraries that have been somehow copied from the Intel compiler runtime: cilk_db.so, libchkp.so, libcilkrts.so, libgfxoffload.so, libimf.so, libintlc.so, libioffload_host.so, libioffload_target.so, libirc.so, libirng.so, libistrconv.so, libmpx.so, liboffload.so, libpdbx.so, and libsvml.so.

Any idea why this is happening and how to stop it?


#2

I found out the answer to this question on my own. It turns out that this copying from the Intel compiler runtime is done by the InstallRequiredSystemLibraries module used by HDF5’s own CMake files. I’m not sure if the HDF5 developers knew that this module would do this.

Anyway, to stop this copying, one can set the CMake variable CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP to TRUE.