I was able to successfully install VASP6.4.2 on RedHat with HDF5 (installation point /usr/local/hdf5) and the intel compiler suite. For makefile.include, I used
arch/makefile.include.intel
with the required modification of HDF5_ROOT
HDF5_ROOT ?= /usr/local/hdf5
In order to run one of the executables (e.g., vasp_std), I had to go through one by one to identify and locate the shared object files to create
LD_LIBRARY_PATH=/apps/hdf5/lib:/apps/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64:/apps/intel/compilers_and_libraries_2020.4.304/linux/compiler/lib/intel64_lin:/apps/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/libfabric/lib
Otherwise, I would get runtime errors such as
vasp_std: error while loading shared libraries: libmkl_intel_lp64.so: cannot open shared object file: No such file or directory
Is it expected that I would have to manually go through this process? Or have I missed something?
Thank you.
RedHat installation using Intel compiler and HDF5
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 1
- Joined: Thu Jul 21, 2022 7:01 pm
-
- Global Moderator
- Posts: 542
- Joined: Fri Nov 08, 2019 7:18 am
Re: RedHat installation using Intel compiler and HDF5
Yes, setting up the correct LD_LIBRARY_PATH is up to the user.
Often the tools facilitate this by providing some helper scripts. For example, for Intel there is a script (defaults to /opt/intel/oneapi/setvars.sh) that would make all the Intel compilers, MPI, ... available. If you work on an HPC, these paths are often set by the module system.
When you manually install libraries, you need to keep track of the folder in which these are installed. We recommend setting up a small script that you can run every time or putting these libraries in your .bashrc file if you do not have multiple distinct setups.
Often the tools facilitate this by providing some helper scripts. For example, for Intel there is a script (defaults to /opt/intel/oneapi/setvars.sh) that would make all the Intel compilers, MPI, ... available. If you work on an HPC, these paths are often set by the module system.
When you manually install libraries, you need to keep track of the folder in which these are installed. We recommend setting up a small script that you can run every time or putting these libraries in your .bashrc file if you do not have multiple distinct setups.
Martin Schlipf
VASP developer