Install Libraries on JURECA with ifort 19.0.0, gcc 7.3.0 and Parastation MPI
The libraries used by CLaMS are installed in directory /homec/jicg11/jicg1108
load modules
module purge module load intel-para module load netCDF-Fortran
create new directories
mkdir clams_lib_ifort19.0.0 mkdir clams_mod_ifort19.0.0 mkdir clams_lib_mpi_ifort19.0.0 mkdir clams_mod_mpi_ifort19.0.0
qhull
Possibly the name of the C-routine qhull_dll in file unix.c must be adjusted: for gcc it must be qhull_dll_ !
cd ~/qhull make new mv libqhull.a libqhull_gcc7.3.0.a cd ~/clams_lib_ifort19 ln -sf ../qhull/libqhull_gcc7.3.0.a ./libqhull.a cd ~ chmod -R 755 qhull
numrec
cd ~/numrec-f90 mkdir lib_ifort19.0.0 mkdir mod_ifort19.0.0 mkdir obj_ifort19.0.0
in Makefile.numrec:F90 = ifort objDir = obj_ifort19.0.0 modDir = mod_ifort19.0.0 libDir = lib_ifort19.0.0
make -f Makefile.numrec new
cd ~/clams_lib_ifort19 ln -sf ../numrec-f90/lib_ifort19.0.0/libnumrec.a . cd ~/clams_mod_ifort19 ln -sf ../numrec-f90/mod_ifort19.0.0/nr.mod . ln -sf ../numrec-f90/mod_ifort19.0.0/nrtype.mod . ln -sf ../numrec-f90/mod_ifort19.0.0/nrutil.mod . cd ~ chmod -R 755 numrec-f90
netcdf
- Netcdf is installed on Jureca for different C and Fortran compiler versions.
- If the netcdf module is loaded, "ncdump" and "ncgen" can be used and compilation of programs using netcdf is possible (without specifying any library or include paths).
- Compile Fortran program with NetCDF:
ifort -o progname progname.f90 -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lz
- After loading the netcdf module the following environment variables are expanded:
PATH includes directory with netcdf binaries (ncdump)
CPATH includes directory with include-files and netcdf-modules
LD_LIBRARY_PATH includes directories with all needed libraries (netcdf, hdf5, zlib etc)
utils
- Following files were adapted:
- utils-cf/Makefile
- mkincl/platform.mk
- mkincl/config/config.Linux_ifc
- Serial version of library:
cd ~/utils-cf make theLibrary cd ~/clams_lib_ifort19 ln -sf ../utils-cf/lib_linux_ifc_19.0.0.117/libutils-icg1.a . cd ~/clams_mod_ifort19 ln -sf ../utils-cf/mod_linux_ifc_19.0.0.117/* . cd ~ chmod -R 755 utils-cf
- MPI version of library:
cd ~/utils-cf make useMPI=true theLibrary cd ~/clams_lib_mpi_ifort19 ln -sf ../utils-cf/lib_linux_ifc_19.0.0.117_mpi/libutils-icg1.a . cd ~/clams_mod_mpi_ifort19 ln -sf ../utils-cf/mod_linux_ifc_19.0.0.117_mpi/* . cd ~ chmod -R 755 utils-cf
set new links
rm clams_lib clams_mod clams_lib_mpi clams_mod_mpi ln -sf clams_lib_ifort19.0.0 clams_lib ln -sf clams_mod_ifort19.0.0 clams_mod ln -sf clams_lib_mpi_ifort19.0.0 clams_lib_mpi ln -sf clams_mod_mpi_ifort19.0.0 clams_mod_mpi