Developer Guide

Contents

Linking on IA-32 Architecture Systems

The following examples illustrate linking that uses Intel(R) compilers.
Most
examples use the
.f
Fortran source file. C/C++ users should instead specify a
.cpp
(C++) or
.c
(C) file and replace
ifort
with
icl
:
  • Static linking of
    myprog.f
    and
    OpenMP* threaded
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_intel
    _c
    .
    lib
    mkl_intel_thread.
    lib
    mkl_core.
    lib
    l
    ib
    iomp5
    md.lib
  • Dynamic linking of
    myprog.f
    and
    OpenMP* threaded
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_intel
    _c_dll.lib
    mkl_intel_thread
    _dll.lib
    mkl_core
    _dll.lib
    l
    ib
    iomp5
    md.lib
  • Static linking of
    myprog.f
    and sequential version of
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_intel
    _c
    .
    lib
    mkl_sequential.
    lib
    mkl_core.
    lib
  • Dynamic linking of
    myprog.f
    and sequential version of
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_intel
    _c_dll.lib
    mkl_sequential
    _dll.lib
    mkl_core
    _dll.lib
  • Static linking of user code
    myprog.f
    and
    OpenMP* threaded
    Intel® MKL
    supporting the stdcall interface:
    ifort myprog.f mkl_intel_s.lib mkl_intel_thread.lib mkl_core.lib libiomp5md.lib
  • Dynamic linking of user code
    myprog.f
    and
    OpenMP* threaded
    Intel® MKL
    supporting the stdcall interface:
    ifort myprog.f mkl_intel_s_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib libiomp5md.lib
  • Dynamic linking of
    myprog.f
    and
    OpenMP* threaded
    or sequential
    Intel® MKL
    supporting the cdecl or stdcall interface
    (Call the
    mkl_set_threading_layer
    function or set value of the
    MKL_THREADING_LAYER
    environment variable to choose threaded or sequential mode):
    ifort myprog.f mkl_rt.lib
  • Static linking of
    myprog.f
    , Fortran 95 LAPACK interface, and
    OpenMP* threaded
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_lapack95
    .lib
    mkl_intel
    _c
    .
    lib
    mkl_intel_thread.
    lib
    mkl_core.
    lib
    lib
    iomp5
    md.lib
  • Static linking of
    myprog.f
    , Fortran 95 BLAS interface, and
    OpenMP* threaded
    Intel® MKL
    supporting the cdecl interface
    :
    ifort myprog.f mkl_blas95
    .lib
    mkl_intel
    _c
    .
    lib
    mkl_intel_thread.
    lib
    mkl_core.
    lib
    lib
    iomp5
    md.lib
  • Static linking of
    myprog.c
    and
    Intel® MKL
    threaded with Intel® Threading Building Blocks (Intel® TBB), provided that the
    LIB
    environment variable contains the path to Intel TBB library:
    icl myprog.c /link /libpath:$MKLPATH -I$MKLINCLUDE mkl_intel.lib mkl_tbb_thread.lib mkl_core.lib tbb.lib
  • Dynamic linking of
    myprog.c
    and
    Intel® MKL
    threaded with Intel TBB, provided that the
    LIB
    environment variable contains the path to Intel TBB library:
    icl myprog.c /link /libpath:$MKLPATH -I$MKLINCLUDE mkl_intel_dll.lib mkl_tbb_thread_dll.lib mkl_core_dll.lib tbb.lib

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804