Next: , Previous: i386 and x86-64 Options, Up: Submodel Options


3.17.16 i386 and x86-64 Windows Options

These additional options are available for Windows targets:

-mconsole
This option is available for Cygwin and MinGW targets. It specifies that a console application is to be generated, by instructing the linker to set the PE header subsystem type required for console applications. This is the default behavior for Cygwin and MinGW targets.
-mcygwin
This option is available for Cygwin targets. It specifies that the Cygwin internal interface is to be used for predefined preprocessor macros, C runtime libraries and related linker paths and options. For Cygwin targets this is the default behavior. This option is deprecated and will be removed in a future release.
-mno-cygwin
This option is available for Cygwin targets. It specifies that the MinGW internal interface is to be used instead of Cygwin's, by setting MinGW-related predefined macros and linker paths and default library options. This option is deprecated and will be removed in a future release.
-mdll
This option is available for Cygwin and MinGW targets. It specifies that a DLL - a dynamic link library - is to be generated, enabling the selection of the required runtime startup object and entry point.
-mnop-fun-dllimport
This option is available for Cygwin and MinGW targets. It specifies that the dllimport attribute should be ignored.
-mthread
This option is available for MinGW targets. It specifies that MinGW-specific thread support is to be used.
-municode
This option is available for mingw-w64 targets. It specifies that the UNICODE macro is getting pre-defined and that the unicode capable runtime startup code is chosen.
-mwin32
This option is available for Cygwin and MinGW targets. It specifies that the typical Windows pre-defined macros are to be set in the pre-processor, but does not influence the choice of runtime library/startup code.
-mwindows
This option is available for Cygwin and MinGW targets. It specifies that a GUI application is to be generated by instructing the linker to set the PE header subsystem type appropriately.
-fno-set-stack-executable
This option is available for MinGW targets. It specifies that the executable flag for stack used by nested functions isn't set. This is necessary for binaries running in kernel mode of Windows, as there the user32 API, which is used to set executable privileges, isn't available.
-mpe-aligned-commons
This option is available for Cygwin and MinGW targets. It specifies that the GNU extension to the PE file format that permits the correct alignment of COMMON variables should be used when generating code. It will be enabled by default if GCC detects that the target assembler found during configuration supports the feature.

See also under i386 and x86-64 Options for standard options.