1<html lang="en"> 2<head> 3<title>i386 and x86-64 Windows Options - Using the GNU Compiler Collection (GCC)</title> 4<meta http-equiv="Content-Type" content="text/html"> 5<meta name="description" content="Using the GNU Compiler Collection (GCC)"> 6<meta name="generator" content="makeinfo 4.13"> 7<link title="Top" rel="start" href="index.html#Top"> 8<link rel="up" href="Submodel-Options.html#Submodel-Options" title="Submodel Options"> 9<link rel="prev" href="i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options" title="i386 and x86-64 Options"> 10<link rel="next" href="IA_002d64-Options.html#IA_002d64-Options" title="IA-64 Options"> 11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> 12<!-- 13Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 141998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 152010 Free Software Foundation, Inc. 16 17Permission is granted to copy, distribute and/or modify this document 18under the terms of the GNU Free Documentation License, Version 1.3 or 19any later version published by the Free Software Foundation; with the 20Invariant Sections being ``Funding Free Software'', the Front-Cover 21Texts being (a) (see below), and with the Back-Cover Texts being (b) 22(see below). A copy of the license is included in the section entitled 23``GNU Free Documentation License''. 24 25(a) The FSF's Front-Cover Text is: 26 27 A GNU Manual 28 29(b) The FSF's Back-Cover Text is: 30 31 You have freedom to copy and modify this GNU Manual, like GNU 32 software. Copies published by the Free Software Foundation raise 33 funds for GNU development.--> 34<meta http-equiv="Content-Style-Type" content="text/css"> 35<style type="text/css"><!-- 36 pre.display { font-family:inherit } 37 pre.format { font-family:inherit } 38 pre.smalldisplay { font-family:inherit; font-size:smaller } 39 pre.smallformat { font-family:inherit; font-size:smaller } 40 pre.smallexample { font-size:smaller } 41 pre.smalllisp { font-size:smaller } 42 span.sc { font-variant:small-caps } 43 span.roman { font-family:serif; font-weight:normal; } 44 span.sansserif { font-family:sans-serif; font-weight:normal; } 45--></style> 46<link rel="stylesheet" type="text/css" href="../cs.css"> 47</head> 48<body> 49<div class="node"> 50<a name="i386-and-x86-64-Windows-Options"></a> 51<a name="i386-and-x86_002d64-Windows-Options"></a> 52<p> 53Next: <a rel="next" accesskey="n" href="IA_002d64-Options.html#IA_002d64-Options">IA-64 Options</a>, 54Previous: <a rel="previous" accesskey="p" href="i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options">i386 and x86-64 Options</a>, 55Up: <a rel="up" accesskey="u" href="Submodel-Options.html#Submodel-Options">Submodel Options</a> 56<hr> 57</div> 58 59<h4 class="subsection">3.17.16 i386 and x86-64 Windows Options</h4> 60 61<p><a name="index-i386-and-x86_002d64-Windows-Options-1398"></a> 62These additional options are available for Windows targets: 63 64 <dl> 65<dt><code>-mconsole</code><dd><a name="index-mconsole-1399"></a>This option is available for Cygwin and MinGW targets. It 66specifies that a console application is to be generated, by 67instructing the linker to set the PE header subsystem type 68required for console applications. 69This is the default behavior for Cygwin and MinGW targets. 70 71 <br><dt><code>-mdll</code><dd><a name="index-mdll-1400"></a>This option is available for Cygwin and MinGW targets. It 72specifies that a DLL - a dynamic link library - is to be 73generated, enabling the selection of the required runtime 74startup object and entry point. 75 76 <br><dt><code>-mnop-fun-dllimport</code><dd><a name="index-mnop_002dfun_002ddllimport-1401"></a>This option is available for Cygwin and MinGW targets. It 77specifies that the dllimport attribute should be ignored. 78 79 <br><dt><code>-mthread</code><dd><a name="index-mthread-1402"></a>This option is available for MinGW targets. It specifies 80that MinGW-specific thread support is to be used. 81 82 <br><dt><code>-municode</code><dd><a name="index-municode-1403"></a>This option is available for mingw-w64 targets. It specifies 83that the UNICODE macro is getting pre-defined and that the 84unicode capable runtime startup code is chosen. 85 86 <br><dt><code>-mwin32</code><dd><a name="index-mwin32-1404"></a>This option is available for Cygwin and MinGW targets. It 87specifies that the typical Windows pre-defined macros are to 88be set in the pre-processor, but does not influence the choice 89of runtime library/startup code. 90 91 <br><dt><code>-mwindows</code><dd><a name="index-mwindows-1405"></a>This option is available for Cygwin and MinGW targets. It 92specifies that a GUI application is to be generated by 93instructing the linker to set the PE header subsystem type 94appropriately. 95 96 <br><dt><code>-fno-set-stack-executable</code><dd><a name="index-fno_002dset_002dstack_002dexecutable-1406"></a>This option is available for MinGW targets. It specifies that 97the executable flag for stack used by nested functions isn't 98set. This is necessary for binaries running in kernel mode of 99Windows, as there the user32 API, which is used to set executable 100privileges, isn't available. 101 102 <br><dt><code>-mpe-aligned-commons</code><dd><a name="index-mpe_002daligned_002dcommons-1407"></a>This option is available for Cygwin and MinGW targets. It 103specifies that the GNU extension to the PE file format that 104permits the correct alignment of COMMON variables should be 105used when generating code. It will be enabled by default if 106GCC detects that the target assembler found during configuration 107supports the feature. 108</dl> 109 110 <p>See also under <a href="i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options">i386 and x86-64 Options</a> for standard options. 111 112 </body></html> 113 114