Controls whether the compiler links to static or dynamic OpenMP* run-time libraries.

Syntax

Linux and macOS:

-qopenmp-link=library

Windows:

None

Arguments

library

Specifies the OpenMP library to use. Possible values are:

static

Tells the compiler to link to static OpenMP run-time libraries. Note that static OpenMP libraries are deprecated.

dynamic

Tells the compiler to link to dynamic OpenMP run-time libraries.

Default

-qopenmp-link=dynamic

The compiler links to dynamic OpenMP* run-time libraries. However, if Linux* option -static is specified, the compiler links to static OpenMP run-time libraries.

Description

This option controls whether the compiler links to static or dynamic OpenMP* run-time libraries.

To link to the static OpenMP run-time library (RTL) and create a purely static executable, you must specify -qopenmp-link=static. However, we strongly recommend you use the default setting, -qopenmp-link=dynamic.

Note

Compiler options -static-intel and -shared-intel (Linux* and macOS*) have no effect on which OpenMP run-time library is linked.

Note

On Linux* systems, -qopenmp-link=dynamic cannot be used in conjunction with option -static. If you try to specify both options together, an error will be displayed.

Note

On Linux systems, the OpenMP runtime library depends on using libpthread and libc (libgcc when compiled with gcc). Libpthread and libc (libgcc) must both be static or both be dynamic. If both libpthread and libc (libgcc) are static, then the static version of the OpenMP runtime should be used. If both libpthread and libc (libgcc) are dynamic, then either the static or dynamic version of the OpenMP runtime may be used.

IDE Equivalent

None

Alternate Options

None

有关编译器优化的更完整信息,请参阅优化通知