Visible to Intel only — GUID: GUID-A5DECA98-F26E-4D4F-88B5-BE90681C38B9
Visible to Intel only — GUID: GUID-A5DECA98-F26E-4D4F-88B5-BE90681C38B9
Examples for Linking a Fortran Application
These examples illustrate linking of an application under the following conditions:
- Main module is in Fortran.
- You are using the Intel® Fortran Compiler.
- You are using the Intel MPI library.
- Intel® oneAPI Math Kernel Library (oneMKL) functions use LP64 interfaces.
- The PATH environment variable contains a directory with the MPI linker scripts.
- $MKLPATH is a user-defined variable containing <mkl_directory>/lib.
To link dynamically with ScaLAPACK for a cluster of systems based on the Intel® 64 architecture, use the following link line:
mpiifort <user files to link> \
-L$MKLPATH \
-lmkl_scalapack_lp64 \
-lmkl_blacs_intelmpi_lp64 \
-lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core \
-liomp5 -lpthread
To link statically with Cluster FFT for a cluster of systems based on the Intel® 64 architecture, use the following link line:
mpiifort <user files to link> \
-Wl,--start-group \
$MKLPATH/libmkl_cdft_core.a \
$MKLPATH/libmkl_blacs_intelmpi_lp64.a \
$MKLPATH/libmkl_intel_lp64.a \
$MKLPATH/libmkl_intel_thread.a \
$MKLPATH/libmkl_core.a \
-Wl,--end-group \
-liomp5 -lpthread
To link statically with Cluster Sparse Solver for a cluster of systems based on the Intel® 64 architecture, use the following link line:
mpiifort <user files to link> \
-Wl,--start-group \
$MKLPATH/libmkl_blacs_intelmpi_lp64.a \
$MKLPATH/libmkl_intel_lp64.a \
$MKLPATH/libmkl_intel_thread.a \
$MKLPATH/libmkl_core.a \
-Wl,--end-group \
-liomp5 -lpthread