| 1 | <html lang="en"> | 
|---|
| 2 | <head> | 
|---|
| 3 | <title>Installing GCC: Configuration</title> | 
|---|
| 4 | <meta http-equiv="Content-Type" content="text/html"> | 
|---|
| 5 | <meta name="description" content="Installing GCC: Configuration"> | 
|---|
| 6 | <meta name="generator" content="makeinfo 4.6"> | 
|---|
| 7 | <!-- | 
|---|
| 8 | Copyright © 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, | 
|---|
| 9 | 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. | 
|---|
| 10 | <br><p> | 
|---|
| 11 | <p>Permission is granted to copy, distribute and/or modify this document | 
|---|
| 12 | under the terms of the GNU Free Documentation License, Version 1.2 or | 
|---|
| 13 | any later version published by the Free Software Foundation; with no | 
|---|
| 14 | Invariant Sections, the Front-Cover texts being (a) (see below), and | 
|---|
| 15 | with the Back-Cover Texts being (b) (see below).  A copy of the | 
|---|
| 16 | license is included in the section entitled "<a href="./gfdl.html">GNU Free Documentation License</a>". | 
|---|
| 17 |  | 
|---|
| 18 | <p>(a) The FSF's Front-Cover Text is: | 
|---|
| 19 |  | 
|---|
| 20 | <p>A GNU Manual | 
|---|
| 21 |  | 
|---|
| 22 | <p>(b) The FSF's Back-Cover Text is: | 
|---|
| 23 |  | 
|---|
| 24 | <p>You have freedom to copy and modify this GNU Manual, like GNU | 
|---|
| 25 | software.  Copies published by the Free Software Foundation raise | 
|---|
| 26 | funds for GNU development.--> | 
|---|
| 27 | <meta http-equiv="Content-Style-Type" content="text/css"> | 
|---|
| 28 | <style type="text/css"><!-- | 
|---|
| 29 | pre.display { font-family:inherit } | 
|---|
| 30 | pre.format  { font-family:inherit } | 
|---|
| 31 | pre.smalldisplay { font-family:inherit; font-size:smaller } | 
|---|
| 32 | pre.smallformat  { font-family:inherit; font-size:smaller } | 
|---|
| 33 | pre.smallexample { font-size:smaller } | 
|---|
| 34 | pre.smalllisp    { font-size:smaller } | 
|---|
| 35 | --></style> | 
|---|
| 36 | </head> | 
|---|
| 37 | <body> | 
|---|
| 38 | <h1 class="settitle">Installing GCC: Configuration</h1> | 
|---|
| 39 | Like most GNU software, GCC must be configured before it can be built. | 
|---|
| 40 | This document describes the recommended configuration procedure | 
|---|
| 41 | for both native and cross targets. | 
|---|
| 42 |  | 
|---|
| 43 | <p>We use <var>srcdir</var> to refer to the toplevel source directory for | 
|---|
| 44 | GCC; we use <var>objdir</var> to refer to the toplevel build/object directory. | 
|---|
| 45 |  | 
|---|
| 46 | <p>If you obtained the sources via CVS, <var>srcdir</var> must refer to the top | 
|---|
| 47 | <code>gcc</code> directory, the one where the <code>MAINTAINERS</code> can be found, | 
|---|
| 48 | and not its <code>gcc</code> subdirectory, otherwise the build will fail. | 
|---|
| 49 |  | 
|---|
| 50 | <p>If either <var>srcdir</var> or <var>objdir</var> is located on an automounted NFS | 
|---|
| 51 | file system, the shell's built-in <code>pwd</code> command will return | 
|---|
| 52 | temporary pathnames.  Using these can lead to various sorts of build | 
|---|
| 53 | problems.  To avoid this issue, set the <code>PWDCMD</code> environment | 
|---|
| 54 | variable to an automounter-aware <code>pwd</code> command, e.g., | 
|---|
| 55 | <code>pawd</code> or <code>amq -w</code>, during the configuration and build | 
|---|
| 56 | phases. | 
|---|
| 57 |  | 
|---|
| 58 | <p>First, we <strong>highly</strong> recommend that GCC be built into a | 
|---|
| 59 | separate directory than the sources which does <strong>not</strong> reside | 
|---|
| 60 | within the source tree.  This is how we generally build GCC; building | 
|---|
| 61 | where <var>srcdir</var> == <var>objdir</var> should still work, but doesn't | 
|---|
| 62 | get extensive testing; building where <var>objdir</var> is a subdirectory | 
|---|
| 63 | of <var>srcdir</var> is unsupported. | 
|---|
| 64 |  | 
|---|
| 65 | <p>If you have previously built GCC in the same directory for a | 
|---|
| 66 | different target machine, do <code>make distclean</code> to delete all files | 
|---|
| 67 | that might be invalid.  One of the files this deletes is <code>Makefile</code>; | 
|---|
| 68 | if <code>make distclean</code> complains that <code>Makefile</code> does not exist | 
|---|
| 69 | or issues a message like "don't know how to make distclean" it probably | 
|---|
| 70 | means that the directory is already suitably clean.  However, with the | 
|---|
| 71 | recommended method of building in a separate <var>objdir</var>, you should | 
|---|
| 72 | simply use a different <var>objdir</var> for each target. | 
|---|
| 73 |  | 
|---|
| 74 | <p>Second, when configuring a native system, either <code>cc</code> or | 
|---|
| 75 | <code>gcc</code> must be in your path or you must set <code>CC</code> in | 
|---|
| 76 | your environment before running configure.  Otherwise the configuration | 
|---|
| 77 | scripts may fail. | 
|---|
| 78 |  | 
|---|
| 79 | <p>Note that the bootstrap compiler and the resulting GCC must be link | 
|---|
| 80 | compatible, else the bootstrap will fail with linker errors about | 
|---|
| 81 | incompatible object file formats.  Several multilibed targets are | 
|---|
| 82 | affected by this requirement, see | 
|---|
| 83 | <a href="specific.html">host/target specific installation notes</a>. | 
|---|
| 84 |  | 
|---|
| 85 | <p>To configure GCC: | 
|---|
| 86 |  | 
|---|
| 87 | <pre class="example">        % mkdir <var>objdir</var> | 
|---|
| 88 | % cd <var>objdir</var> | 
|---|
| 89 | % <var>srcdir</var>/configure [<var>options</var>] [<var>target</var>] | 
|---|
| 90 | </pre> | 
|---|
| 91 |  | 
|---|
| 92 | <h3 class="heading"><a name="TOC0"></a>Target specification</h3> | 
|---|
| 93 |  | 
|---|
| 94 | <ul> | 
|---|
| 95 | <li>GCC has code to correctly determine the correct value for <var>target</var> | 
|---|
| 96 | for nearly all native systems.  Therefore, we highly recommend you not | 
|---|
| 97 | provide a configure target when configuring a native compiler. | 
|---|
| 98 |  | 
|---|
| 99 | <li><var>target</var> must be specified as <code>--target=</code><var>target</var><code></code> | 
|---|
| 100 | when configuring a cross compiler; examples of valid targets would be | 
|---|
| 101 | i960-rtems, m68k-coff, sh-elf, etc. | 
|---|
| 102 |  | 
|---|
| 103 | <li>Specifying just <var>target</var> instead of <code>--target=</code><var>target</var><code></code> | 
|---|
| 104 | implies that the host defaults to <var>target</var>. | 
|---|
| 105 | </ul> | 
|---|
| 106 |  | 
|---|
| 107 | <h3 class="heading"><a name="TOC1"></a>Options specification</h3> | 
|---|
| 108 |  | 
|---|
| 109 | <p>Use <var>options</var> to override several configure time options for | 
|---|
| 110 | GCC.  A list of supported <var>options</var> follows; <code>configure | 
|---|
| 111 | --help</code> may list other options, but those not listed below may not | 
|---|
| 112 | work and should not normally be used. | 
|---|
| 113 |  | 
|---|
| 114 | <dl> | 
|---|
| 115 | <dt><code>--prefix=</code><var>dirname</var><code></code> | 
|---|
| 116 | <dd>Specify the toplevel installation | 
|---|
| 117 | directory.  This is the recommended way to install the tools into a directory | 
|---|
| 118 | other than the default.  The toplevel installation directory defaults to | 
|---|
| 119 | <code>/usr/local</code>. | 
|---|
| 120 |  | 
|---|
| 121 | <p>We <strong>highly</strong> recommend against <var>dirname</var> being the same or a | 
|---|
| 122 | subdirectory of <var>objdir</var> or vice versa.  If specifying a directory | 
|---|
| 123 | beneath a user's home directory tree, some shells will not expand | 
|---|
| 124 | <var>dirname</var> correctly if it contains the <code>~</code> metacharacter; use | 
|---|
| 125 | <code>$HOME</code> instead. | 
|---|
| 126 |  | 
|---|
| 127 | <p>These additional options control where certain parts of the distribution | 
|---|
| 128 | are installed.  Normally you should not need to use these options. | 
|---|
| 129 | <dl> | 
|---|
| 130 | <dt><code>--exec-prefix=</code><var>dirname</var><code></code> | 
|---|
| 131 | <dd>Specify the toplevel installation directory for architecture-dependent | 
|---|
| 132 | files.  The default is <code></code><var>prefix</var><code></code>. | 
|---|
| 133 |  | 
|---|
| 134 | <br><dt><code>--bindir=</code><var>dirname</var><code></code> | 
|---|
| 135 | <dd>Specify the installation directory for the executables called by users | 
|---|
| 136 | (such as <code>gcc</code> and <code>g++</code>).  The default is | 
|---|
| 137 | <code></code><var>exec-prefix</var><code>/bin</code>. | 
|---|
| 138 |  | 
|---|
| 139 | <br><dt><code>--libdir=</code><var>dirname</var><code></code> | 
|---|
| 140 | <dd>Specify the installation directory for object code libraries and | 
|---|
| 141 | internal parts of GCC.  The default is <code></code><var>exec-prefix</var><code>/lib</code>. | 
|---|
| 142 |  | 
|---|
| 143 | <br><dt><code>--with-slibdir=</code><var>dirname</var><code></code> | 
|---|
| 144 | <dd>Specify the installation directory for the shared libgcc library.  The | 
|---|
| 145 | default is <code></code><var>libdir</var><code></code>. | 
|---|
| 146 |  | 
|---|
| 147 | <br><dt><code>--infodir=</code><var>dirname</var><code></code> | 
|---|
| 148 | <dd>Specify the installation directory for documentation in info format. | 
|---|
| 149 | The default is <code></code><var>prefix</var><code>/info</code>. | 
|---|
| 150 |  | 
|---|
| 151 | <br><dt><code>--datadir=</code><var>dirname</var><code></code> | 
|---|
| 152 | <dd>Specify the installation directory for some architecture-independent | 
|---|
| 153 | data files referenced by GCC.  The default is <code></code><var>prefix</var><code>/share</code>. | 
|---|
| 154 |  | 
|---|
| 155 | <br><dt><code>--mandir=</code><var>dirname</var><code></code> | 
|---|
| 156 | <dd>Specify the installation directory for manual pages.  The default is | 
|---|
| 157 | <code></code><var>prefix</var><code>/man</code>.  (Note that the manual pages are only extracts from | 
|---|
| 158 | the full GCC manuals, which are provided in Texinfo format.  The manpages | 
|---|
| 159 | are derived by an automatic conversion process from parts of the full | 
|---|
| 160 | manual.) | 
|---|
| 161 |  | 
|---|
| 162 | <br><dt><code>--with-gxx-include-dir=</code><var>dirname</var><code></code> | 
|---|
| 163 | <dd>Specify | 
|---|
| 164 | the installation directory for G++ header files.  The default is | 
|---|
| 165 | <code></code><var>prefix</var><code>/include/g++-v3</code>. | 
|---|
| 166 |  | 
|---|
| 167 | </dl> | 
|---|
| 168 |  | 
|---|
| 169 | <br><dt><code>--program-prefix=</code><var>prefix</var><code></code> | 
|---|
| 170 | <dd>GCC supports some transformations of the names of its programs when | 
|---|
| 171 | installing them. This option prepends <var>prefix</var> to the names of | 
|---|
| 172 | programs to install in <var>bindir</var> (see above). For example, specifying | 
|---|
| 173 | <code>--program-prefix=foo-</code> would result in <code>gcc</code> | 
|---|
| 174 | being installed as <code>/usr/local/bin/foo-gcc</code>. | 
|---|
| 175 |  | 
|---|
| 176 | <br><dt><code>--program-suffix=</code><var>suffix</var><code></code> | 
|---|
| 177 | <dd>Appends <var>suffix</var> to the names of programs to install in <var>bindir</var> | 
|---|
| 178 | (see above). For example, specifying <code>--program-suffix=-3.1</code> | 
|---|
| 179 | would result in <code>gcc</code> being installed as | 
|---|
| 180 | <code>/usr/local/bin/gcc-3.1</code>. | 
|---|
| 181 |  | 
|---|
| 182 | <br><dt><code>--program-transform-name=</code><var>pattern</var><code></code> | 
|---|
| 183 | <dd>Applies the <code>sed</code> script <var>pattern</var> to be applied to the names | 
|---|
| 184 | of programs to install in <var>bindir</var> (see above). <var>pattern</var> has to | 
|---|
| 185 | consist of one or more basic <code>sed</code> editing commands, separated by | 
|---|
| 186 | semicolons. For example, if you want the <code>gcc</code> program name to be | 
|---|
| 187 | transformed to the installed program <code>/usr/local/bin/myowngcc</code> and | 
|---|
| 188 | the <code>g++</code> program name to be transformed to | 
|---|
| 189 | <code>/usr/local/bin/gspecial++</code> without changing other program names, | 
|---|
| 190 | you could use the pattern | 
|---|
| 191 | <code>--program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/'</code> | 
|---|
| 192 | to achieve this effect. | 
|---|
| 193 |  | 
|---|
| 194 | <p>All three options can be combined and used together, resulting in more | 
|---|
| 195 | complex conversion patterns. As a basic rule, <var>prefix</var> (and | 
|---|
| 196 | <var>suffix</var>) are prepended (appended) before further transformations | 
|---|
| 197 | can happen with a special transformation script <var>pattern</var>. | 
|---|
| 198 |  | 
|---|
| 199 | <p>As currently implemented, this option only takes effect for native | 
|---|
| 200 | builds; cross compiler binaries' names are not transformed even when a | 
|---|
| 201 | transformation is explicitly asked for by one of these options. | 
|---|
| 202 |  | 
|---|
| 203 | <p>For native builds, some of the installed programs are also installed | 
|---|
| 204 | with the target alias in front of their name, as in | 
|---|
| 205 | <code>i686-pc-linux-gnu-gcc</code>. All of the above transformations happen | 
|---|
| 206 | before the target alias is prepended to the name - so, specifying | 
|---|
| 207 | <code>--program-prefix=foo-</code> and <code>program-suffix=-3.1</code>, the | 
|---|
| 208 | resulting binary would be installed as | 
|---|
| 209 | <code>/usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1</code>. | 
|---|
| 210 |  | 
|---|
| 211 | <p>As a last shortcoming, none of the installed Ada programs are | 
|---|
| 212 | transformed yet, which will be fixed in some time. | 
|---|
| 213 |  | 
|---|
| 214 | <br><dt><code>--with-local-prefix=</code><var>dirname</var><code></code> | 
|---|
| 215 | <dd>Specify the | 
|---|
| 216 | installation directory for local include files.  The default is | 
|---|
| 217 | <code>/usr/local</code>.  Specify this option if you want the compiler to | 
|---|
| 218 | search directory <code></code><var>dirname</var><code>/include</code> for locally installed | 
|---|
| 219 | header files <em>instead</em> of <code>/usr/local/include</code>. | 
|---|
| 220 |  | 
|---|
| 221 | <p>You should specify <code>--with-local-prefix</code> <strong>only</strong> if your | 
|---|
| 222 | site has a different convention (not <code>/usr/local</code>) for where to put | 
|---|
| 223 | site-specific files. | 
|---|
| 224 |  | 
|---|
| 225 | <p>The default value for <code>--with-local-prefix</code> is <code>/usr/local</code> | 
|---|
| 226 | regardless of the value of <code>--prefix</code>.  Specifying | 
|---|
| 227 | <code>--prefix</code> has no effect on which directory GCC searches for | 
|---|
| 228 | local header files.  This may seem counterintuitive, but actually it is | 
|---|
| 229 | logical. | 
|---|
| 230 |  | 
|---|
| 231 | <p>The purpose of <code>--prefix</code> is to specify where to <em>install | 
|---|
| 232 | GCC</em>.  The local header files in <code>/usr/local/include</code>--if you put | 
|---|
| 233 | any in that directory--are not part of GCC.  They are part of other | 
|---|
| 234 | programs--perhaps many others.  (GCC installs its own header files in | 
|---|
| 235 | another directory which is based on the <code>--prefix</code> value.) | 
|---|
| 236 |  | 
|---|
| 237 | <p>Both the local-prefix include directory and the GCC-prefix include | 
|---|
| 238 | directory are part of GCC's "system include" directories.  Although these | 
|---|
| 239 | two directories are not fixed, they need to be searched in the proper | 
|---|
| 240 | order for the correct processing of the include_next directive.  The | 
|---|
| 241 | local-prefix include directory is searched before the GCC-prefix | 
|---|
| 242 | include directory.  Another characteristic of system include directories | 
|---|
| 243 | is that pedantic warnings are turned off for headers in these directories. | 
|---|
| 244 |  | 
|---|
| 245 | <p>Some autoconf macros add <code>-I </code><var>directory</var><code></code> options to the | 
|---|
| 246 | compiler command line, to ensure that directories containing installed | 
|---|
| 247 | packages' headers are searched.  When <var>directory</var> is one of GCC's | 
|---|
| 248 | system include directories, GCC will ignore the option so that system | 
|---|
| 249 | directories continue to be processed in the correct order.  This | 
|---|
| 250 | may result in a search order different from what was specified but the | 
|---|
| 251 | directory will still be searched. | 
|---|
| 252 |  | 
|---|
| 253 | <p>GCC automatically searches for ordinary libraries using | 
|---|
| 254 | <code>GCC_EXEC_PREFIX</code>.  Thus, when the same installation prefix is | 
|---|
| 255 | used for both GCC and packages, GCC will automatically search for | 
|---|
| 256 | both headers and libraries.  This provides a configuration that is | 
|---|
| 257 | easy to use.  GCC behaves in a manner similar to that when it is | 
|---|
| 258 | installed as a system compiler in <code>/usr</code>. | 
|---|
| 259 |  | 
|---|
| 260 | <p>Sites that need to install multiple versions of GCC may not want to | 
|---|
| 261 | use the above simple configuration.  It is possible to use the | 
|---|
| 262 | <code>--program-prefix</code>, <code>--program-suffix</code> and | 
|---|
| 263 | <code>--program-transform-name</code> options to install multiple versions | 
|---|
| 264 | into a single directory, but it may be simpler to use different prefixes | 
|---|
| 265 | and the <code>--with-local-prefix</code> option to specify the location of the | 
|---|
| 266 | site-specific files for each version.  It will then be necessary for | 
|---|
| 267 | users to specify explicitly the location of local site libraries | 
|---|
| 268 | (e.g., with <code>LIBRARY_PATH</code>). | 
|---|
| 269 |  | 
|---|
| 270 | <p>The same value can be used for both <code>--with-local-prefix</code> and | 
|---|
| 271 | <code>--prefix</code> provided it is not <code>/usr</code>.  This can be used | 
|---|
| 272 | to avoid the default search of <code>/usr/local/include</code>. | 
|---|
| 273 |  | 
|---|
| 274 | <p><strong>Do not</strong> specify <code>/usr</code> as the <code>--with-local-prefix</code>! | 
|---|
| 275 | The directory you use for <code>--with-local-prefix</code> <strong>must not</strong> | 
|---|
| 276 | contain any of the system's standard header files.  If it did contain | 
|---|
| 277 | them, certain programs would be miscompiled (including GNU Emacs, on | 
|---|
| 278 | certain targets), because this would override and nullify the header | 
|---|
| 279 | file corrections made by the <code>fixincludes</code> script. | 
|---|
| 280 |  | 
|---|
| 281 | <p>Indications are that people who use this option use it based on mistaken | 
|---|
| 282 | ideas of what it is for.  People use it as if it specified where to | 
|---|
| 283 | install part of GCC.  Perhaps they make this assumption because | 
|---|
| 284 | installing GCC creates the directory. | 
|---|
| 285 |  | 
|---|
| 286 | <br><dt><code>--enable-shared[=</code><var>package</var><code>[,...]]</code> | 
|---|
| 287 | <dd>Build shared versions of libraries, if shared libraries are supported on | 
|---|
| 288 | the target platform.  Unlike GCC 2.95.x and earlier, shared libraries | 
|---|
| 289 | are enabled by default on all platforms that support shared libraries, | 
|---|
| 290 | except for <code>libobjc</code> which is built as a static library only by | 
|---|
| 291 | default. | 
|---|
| 292 |  | 
|---|
| 293 | <p>If a list of packages is given as an argument, build shared libraries | 
|---|
| 294 | only for the listed packages.  For other packages, only static libraries | 
|---|
| 295 | will be built.  Package names currently recognized in the GCC tree are | 
|---|
| 296 | <code>libgcc</code> (also known as <code>gcc</code>), <code>libstdc++</code> (not | 
|---|
| 297 | <code>libstdc++-v3</code>), <code>libffi</code>, <code>zlib</code>, <code>boehm-gc</code> and | 
|---|
| 298 | <code>libjava</code>.  Note that <code>libobjc</code> does not recognize itself by | 
|---|
| 299 | any name, so, if you list package names in <code>--enable-shared</code>, | 
|---|
| 300 | you will only get static Objective-C libraries.  <code>libf2c</code> and | 
|---|
| 301 | <code>libiberty</code> do not support shared libraries at all. | 
|---|
| 302 |  | 
|---|
| 303 | <p>Use <code>--disable-shared</code> to build only static libraries.  Note that | 
|---|
| 304 | <code>--disable-shared</code> does not accept a list of package names as | 
|---|
| 305 | argument, only <code>--enable-shared</code> does. | 
|---|
| 306 |  | 
|---|
| 307 | <br><dt><code><a name="with-gnu-as"></a>--with-gnu-as</code> | 
|---|
| 308 | <dd>Specify that the compiler should assume that the | 
|---|
| 309 | assembler it finds is the GNU assembler.  However, this does not modify | 
|---|
| 310 | the rules to find an assembler and will result in confusion if the | 
|---|
| 311 | assembler found is not actually the GNU assembler.  (Confusion may also | 
|---|
| 312 | result if the compiler finds the GNU assembler but has not been | 
|---|
| 313 | configured with <code>--with-gnu-as</code>.)  If you have more than one | 
|---|
| 314 | assembler installed on your system, you may want to use this option in | 
|---|
| 315 | connection with <code>--with-as=</code><var>pathname</var><code></code>. | 
|---|
| 316 |  | 
|---|
| 317 | <p>The following systems are the only ones where it makes a difference | 
|---|
| 318 | whether you use the GNU assembler.  On any other system, | 
|---|
| 319 | <code>--with-gnu-as</code> has no effect. | 
|---|
| 320 |  | 
|---|
| 321 | <ul> | 
|---|
| 322 | <li><code>hppa1.0-</code><var>any</var><code>-</code><var>any</var><code></code> | 
|---|
| 323 | <li><code>hppa1.1-</code><var>any</var><code>-</code><var>any</var><code></code> | 
|---|
| 324 | <li><code>i386-</code><var>any</var><code>-sysv</code> | 
|---|
| 325 | <li><code>m68k-bull-sysv</code> | 
|---|
| 326 | <li><code>m68k-hp-hpux</code> | 
|---|
| 327 | <li><code>m68000-hp-hpux</code> | 
|---|
| 328 | <li><code>m68000-att-sysv</code> | 
|---|
| 329 | <li><code></code><var>any</var><code>-lynx-lynxos</code> | 
|---|
| 330 | <li><code>mips-</code><var>any</var><code></code> | 
|---|
| 331 | <li><code>sparc-sun-solaris2.</code><var>any</var><code></code> | 
|---|
| 332 | <li><code>sparc64-</code><var>any</var><code>-solaris2.</code><var>any</var><code></code> | 
|---|
| 333 | </ul> | 
|---|
| 334 |  | 
|---|
| 335 | <p>On the systems listed above (except for the HP-PA, the SPARC, for ISC on | 
|---|
| 336 | the 386, and for <code>mips-sgi-irix5.*</code>), if you use the GNU assembler, | 
|---|
| 337 | you should also use the GNU linker (and specify <code>--with-gnu-ld</code>). | 
|---|
| 338 |  | 
|---|
| 339 | <br><dt><code><a name="with-as"></a>--with-as=</code><var>pathname</var><code></code> | 
|---|
| 340 | <dd>Specify that the | 
|---|
| 341 | compiler should use the assembler pointed to by <var>pathname</var>, rather | 
|---|
| 342 | than the one found by the standard rules to find an assembler, which | 
|---|
| 343 | are: | 
|---|
| 344 | <ul> | 
|---|
| 345 | <li>Check the | 
|---|
| 346 | <code></code><var>exec_prefix</var><code>/lib/gcc-lib/</code><var>target</var><code>/</code><var>version</var><code></code> | 
|---|
| 347 | directory, where <var>exec_prefix</var> defaults to <var>prefix</var> which | 
|---|
| 348 | defaults to <code>/usr/local</code> unless overridden by the | 
|---|
| 349 | <code>--prefix=</code><var>pathname</var><code></code> switch described above. <var>target</var> is the | 
|---|
| 350 | target system triple, such as <code>sparc-sun-solaris2.7</code>, and | 
|---|
| 351 | <var>version</var> denotes the GCC version, such as 3.0. | 
|---|
| 352 | <li>Check operating system specific directories (e.g. <code>/usr/ccs/bin</code> on | 
|---|
| 353 | Sun Solaris 2). | 
|---|
| 354 | </ul> | 
|---|
| 355 | Note that these rules do not check for the value of <code>PATH</code>.  You may | 
|---|
| 356 | want to use <code>--with-as</code> if no assembler is installed in the | 
|---|
| 357 | directories listed above, or if you have multiple assemblers installed | 
|---|
| 358 | and want to choose one that is not found by the above rules. | 
|---|
| 359 |  | 
|---|
| 360 | <br><dt><code><a name="with-gnu-ld"></a>--with-gnu-ld</code> | 
|---|
| 361 | <dd>Same as <a href="#with-gnu-as"><code>--with-gnu-as</code></a> | 
|---|
| 362 | but for the linker. | 
|---|
| 363 |  | 
|---|
| 364 | <br><dt><code>--with-ld=</code><var>pathname</var><code></code> | 
|---|
| 365 | <dd>Same as <a href="#with-as"><code>--with-as</code></a> | 
|---|
| 366 | but for the linker. | 
|---|
| 367 |  | 
|---|
| 368 | <br><dt><code>--with-stabs</code> | 
|---|
| 369 | <dd>Specify that stabs debugging | 
|---|
| 370 | information should be used instead of whatever format the host normally | 
|---|
| 371 | uses.  Normally GCC uses the same debug format as the host system. | 
|---|
| 372 |  | 
|---|
| 373 | <p>On MIPS based systems and on Alphas, you must specify whether you want | 
|---|
| 374 | GCC to create the normal ECOFF debugging format, or to use BSD-style | 
|---|
| 375 | stabs passed through the ECOFF symbol table.  The normal ECOFF debug | 
|---|
| 376 | format cannot fully handle languages other than C.  BSD stabs format can | 
|---|
| 377 | handle other languages, but it only works with the GNU debugger GDB. | 
|---|
| 378 |  | 
|---|
| 379 | <p>Normally, GCC uses the ECOFF debugging format by default; if you | 
|---|
| 380 | prefer BSD stabs, specify <code>--with-stabs</code> when you configure GCC. | 
|---|
| 381 |  | 
|---|
| 382 | <p>No matter which default you choose when you configure GCC, the user | 
|---|
| 383 | can use the <code>-gcoff</code> and <code>-gstabs+</code> options to specify explicitly | 
|---|
| 384 | the debug format for a particular compilation. | 
|---|
| 385 |  | 
|---|
| 386 | <p><code>--with-stabs</code> is meaningful on the ISC system on the 386, also, if | 
|---|
| 387 | <code>--with-gas</code> is used.  It selects use of stabs debugging | 
|---|
| 388 | information embedded in COFF output.  This kind of debugging information | 
|---|
| 389 | supports C++ well; ordinary COFF debugging information does not. | 
|---|
| 390 |  | 
|---|
| 391 | <p><code>--with-stabs</code> is also meaningful on 386 systems running SVR4.  It | 
|---|
| 392 | selects use of stabs debugging information embedded in ELF output.  The | 
|---|
| 393 | C++ compiler currently (2.6.0) does not support the DWARF debugging | 
|---|
| 394 | information normally used on 386 SVR4 platforms; stabs provide a | 
|---|
| 395 | workable alternative.  This requires gas and gdb, as the normal SVR4 | 
|---|
| 396 | tools can not generate or interpret stabs. | 
|---|
| 397 |  | 
|---|
| 398 | <br><dt><code>--disable-multilib</code> | 
|---|
| 399 | <dd>Specify that multiple target | 
|---|
| 400 | libraries to support different target variants, calling | 
|---|
| 401 | conventions, etc should not be built.  The default is to build a | 
|---|
| 402 | predefined set of them. | 
|---|
| 403 |  | 
|---|
| 404 | <p>Some targets provide finer-grained control over which multilibs are built | 
|---|
| 405 | (e.g., <code>--disable-softfloat</code>): | 
|---|
| 406 | <dl> | 
|---|
| 407 | <dt><code>arc-*-elf*</code> | 
|---|
| 408 | <dd>biendian. | 
|---|
| 409 |  | 
|---|
| 410 | <br><dt><code>arm-*-*</code> | 
|---|
| 411 | <dd>fpu, 26bit, underscore, interwork, biendian, nofmult. | 
|---|
| 412 |  | 
|---|
| 413 | <br><dt><code>m68*-*-*</code> | 
|---|
| 414 | <dd>softfloat, m68881, m68000, m68020. | 
|---|
| 415 |  | 
|---|
| 416 | <br><dt><code>mips*-*-*</code> | 
|---|
| 417 | <dd>single-float, biendian, softfloat. | 
|---|
| 418 |  | 
|---|
| 419 | <br><dt><code>powerpc*-*-*, rs6000*-*-*</code> | 
|---|
| 420 | <dd>aix64, pthread, softfloat, powercpu, powerpccpu, powerpcos, biendian, | 
|---|
| 421 | sysv, aix. | 
|---|
| 422 |  | 
|---|
| 423 | </dl> | 
|---|
| 424 |  | 
|---|
| 425 | <br><dt><code>--enable-threads</code> | 
|---|
| 426 | <dd>Specify that the target | 
|---|
| 427 | supports threads.  This affects the Objective-C compiler and runtime | 
|---|
| 428 | library, and exception handling for other languages like C++ and Java. | 
|---|
| 429 | On some systems, this is the default. | 
|---|
| 430 |  | 
|---|
| 431 | <p>In general, the best (and, in many cases, the only known) threading | 
|---|
| 432 | model available will be configured for use.  Beware that on some | 
|---|
| 433 | systems, gcc has not been taught what threading models are generally | 
|---|
| 434 | available for the system.  In this case, <code>--enable-threads</code> is an | 
|---|
| 435 | alias for <code>--enable-threads=single</code>. | 
|---|
| 436 |  | 
|---|
| 437 | <br><dt><code>--disable-threads</code> | 
|---|
| 438 | <dd>Specify that threading support should be disabled for the system. | 
|---|
| 439 | This is an alias for <code>--enable-threads=single</code>. | 
|---|
| 440 |  | 
|---|
| 441 | <br><dt><code>--enable-threads=</code><var>lib</var><code></code> | 
|---|
| 442 | <dd>Specify that | 
|---|
| 443 | <var>lib</var> is the thread support library.  This affects the Objective-C | 
|---|
| 444 | compiler and runtime library, and exception handling for other languages | 
|---|
| 445 | like C++ and Java.  The possibilities for <var>lib</var> are: | 
|---|
| 446 |  | 
|---|
| 447 | <dl> | 
|---|
| 448 | <dt><code>aix</code> | 
|---|
| 449 | <dd>AIX thread support. | 
|---|
| 450 | <br><dt><code>dce</code> | 
|---|
| 451 | <dd>DCE thread support. | 
|---|
| 452 | <br><dt><code>mach</code> | 
|---|
| 453 | <dd>Generic MACH thread support, known to work on NeXTSTEP.  (Please note | 
|---|
| 454 | that the file needed to support this configuration, <code>gthr-mach.h</code>, is | 
|---|
| 455 | missing and thus this setting will cause a known bootstrap failure.) | 
|---|
| 456 | <br><dt><code>no</code> | 
|---|
| 457 | <dd>This is an alias for <code>single</code>. | 
|---|
| 458 | <br><dt><code>posix</code> | 
|---|
| 459 | <dd>Generic POSIX thread support. | 
|---|
| 460 | <br><dt><code>pthreads</code> | 
|---|
| 461 | <dd>Same as <code>posix</code> on arm*-*-linux*, *-*-chorusos* and *-*-freebsd* | 
|---|
| 462 | only.  A future release of gcc might remove this alias or extend it | 
|---|
| 463 | to all platforms. | 
|---|
| 464 | <br><dt><code>rtems</code> | 
|---|
| 465 | <dd>RTEMS thread support. | 
|---|
| 466 | <br><dt><code>single</code> | 
|---|
| 467 | <dd>Disable thread support, should work for all platforms. | 
|---|
| 468 | <br><dt><code>solaris</code> | 
|---|
| 469 | <dd>Sun Solaris 2 thread support. | 
|---|
| 470 | <br><dt><code>vxworks</code> | 
|---|
| 471 | <dd>VxWorks thread support. | 
|---|
| 472 | <br><dt><code>win32</code> | 
|---|
| 473 | <dd>Microsoft Win32 API thread support. | 
|---|
| 474 | </dl> | 
|---|
| 475 |  | 
|---|
| 476 | <br><dt><code>--with-cpu=</code><var>cpu</var><code></code> | 
|---|
| 477 | <dd>Specify which cpu variant the | 
|---|
| 478 | compiler should generate code for by default.  This is currently | 
|---|
| 479 | only supported on some ports, specifically arm, powerpc, and | 
|---|
| 480 | SPARC.  If configure does not recognize the model name (e.g. arm700, | 
|---|
| 481 | 603e, or ultrasparc) you provide, please check the | 
|---|
| 482 | <code>gcc/config.gcc</code> script for a complete list of supported models. | 
|---|
| 483 |  | 
|---|
| 484 | <br><dt><code>--enable-altivec</code> | 
|---|
| 485 | <dd>Specify that the target supports AltiVec vector enhancements.  This | 
|---|
| 486 | option will adjust the ABI for AltiVec enhancements, as well as generate | 
|---|
| 487 | AltiVec code when appropriate.  This option is only available for | 
|---|
| 488 | PowerPC systems. | 
|---|
| 489 |  | 
|---|
| 490 | <br><dt><code>--enable-target-optspace</code> | 
|---|
| 491 | <dd>Specify that target | 
|---|
| 492 | libraries should be optimized for code space instead of code speed. | 
|---|
| 493 | This is the default for the m32r platform. | 
|---|
| 494 |  | 
|---|
| 495 | <br><dt><code>--disable-cpp</code> | 
|---|
| 496 | <dd>Specify that a user visible <code>cpp</code> program should not be installed. | 
|---|
| 497 |  | 
|---|
| 498 | <br><dt><code>--with-cpp-install-dir=</code><var>dirname</var><code></code> | 
|---|
| 499 | <dd>Specify that the user visible <code>cpp</code> program should be installed | 
|---|
| 500 | in <code></code><var>prefix</var><code>/</code><var>dirname</var><code>/cpp</code>, in addition to <var>bindir</var>. | 
|---|
| 501 |  | 
|---|
| 502 | <br><dt><code>--enable-initfini-array</code> | 
|---|
| 503 | <dd>Force the use of sections <code>.init_array</code> and <code>.fini_array</code> | 
|---|
| 504 | (instead of <code>.init</code> and <code>.fini</code>) for constructors and | 
|---|
| 505 | destructors.  Option <code>--disable-initfini-array</code> has the | 
|---|
| 506 | opposite effect.  If neither option is specified, the configure script | 
|---|
| 507 | will try to guess whether the <code>.init_array</code> and | 
|---|
| 508 | <code>.fini_array</code> sections are supported and, if they are, use them. | 
|---|
| 509 |  | 
|---|
| 510 | <br><dt><code>--enable-maintainer-mode</code> | 
|---|
| 511 | <dd>The build rules that | 
|---|
| 512 | regenerate the GCC master message catalog <code>gcc.pot</code> are normally | 
|---|
| 513 | disabled.  This is because it can only be rebuilt if the complete source | 
|---|
| 514 | tree is present.  If you have changed the sources and want to rebuild the | 
|---|
| 515 | catalog, configuring with <code>--enable-maintainer-mode</code> will enable | 
|---|
| 516 | this.  Note that you need a recent version of the <code>gettext</code> tools | 
|---|
| 517 | to do so. | 
|---|
| 518 |  | 
|---|
| 519 | <br><dt><code>--enable-version-specific-runtime-libs</code> | 
|---|
| 520 | <dd>Specify | 
|---|
| 521 | that runtime libraries should be installed in the compiler specific | 
|---|
| 522 | subdirectory (<code></code><var>libsubdir</var><code></code>) rather than the usual places.  In | 
|---|
| 523 | addition, <code>libstdc++</code>'s include files will be installed in | 
|---|
| 524 | <code></code><var>libsubdir</var><code>/include/g++</code> unless you overruled it by using | 
|---|
| 525 | <code>--with-gxx-include-dir=</code><var>dirname</var><code></code>.  Using this option is | 
|---|
| 526 | particularly useful if you intend to use several versions of GCC in | 
|---|
| 527 | parallel. This is currently supported by <code>libf2c</code> and | 
|---|
| 528 | <code>libstdc++</code>, and is the default for <code>libobjc</code> which cannot be | 
|---|
| 529 | changed in this case. | 
|---|
| 530 |  | 
|---|
| 531 | <br><dt><code>--enable-languages=</code><var>lang1</var><code>,</code><var>lang2</var><code>,...</code> | 
|---|
| 532 | <dd>Specify that only a particular subset of compilers and | 
|---|
| 533 | their runtime libraries should be built.  For a list of valid values for | 
|---|
| 534 | <var>langN</var> you can issue the following command in the | 
|---|
| 535 | <code>gcc</code> directory of your GCC source tree:<br> | 
|---|
| 536 | <pre class="example">          grep language= */config-lang.in | 
|---|
| 537 | </pre> | 
|---|
| 538 | Currently, you can use any of the following: | 
|---|
| 539 | <code>ada</code>, <code>c</code>, <code>c++</code>, <code>f77</code>, <code>java</code>, <code>objc</code>. | 
|---|
| 540 | Building the Ada compiler has special requirements, see below.<br> | 
|---|
| 541 | If you do not pass this flag, all languages available in the <code>gcc</code> | 
|---|
| 542 | sub-tree will be configured.  Re-defining <code>LANGUAGES</code> when calling | 
|---|
| 543 | <code>make bootstrap</code> <strong>does not</strong> work anymore, as those | 
|---|
| 544 | language sub-directories might not have been configured! | 
|---|
| 545 |  | 
|---|
| 546 | <br><dt><code>--disable-libgcj</code> | 
|---|
| 547 | <dd>Specify that the run-time libraries | 
|---|
| 548 | used by GCJ should not be built.  This is useful in case you intend | 
|---|
| 549 | to use GCJ with some other run-time, or you're going to install it | 
|---|
| 550 | separately, or it just happens not to build on your particular | 
|---|
| 551 | machine.  In general, if the Java front end is enabled, the GCJ | 
|---|
| 552 | libraries will be enabled too, unless they're known to not work on | 
|---|
| 553 | the target platform.  If GCJ is enabled but <code>libgcj</code> isn't built, you | 
|---|
| 554 | may need to port it; in this case, before modifying the top-level | 
|---|
| 555 | <code>configure.in</code> so that <code>libgcj</code> is enabled by default on this platform, | 
|---|
| 556 | you may use <code>--enable-libgcj</code> to override the default. | 
|---|
| 557 |  | 
|---|
| 558 | <br><dt><code>--with-dwarf2</code> | 
|---|
| 559 | <dd>Specify that the compiler should | 
|---|
| 560 | use DWARF 2 debugging information as the default. | 
|---|
| 561 |  | 
|---|
| 562 | <br><dt><code>--enable-win32-registry</code> | 
|---|
| 563 | <dd><dt><code>--enable-win32-registry=</code><var>key</var><code></code> | 
|---|
| 564 | <dd><dt><code>--disable-win32-registry</code> | 
|---|
| 565 | <dd>The <code>--enable-win32-registry</code> option enables Windows-hosted GCC | 
|---|
| 566 | to look up installations paths in the registry using the following key: | 
|---|
| 567 |  | 
|---|
| 568 | <pre class="smallexample">          <code>HKEY_LOCAL_MACHINE\SOFTWARE\Free Software Foundation\</code><var>key</var><code></code> | 
|---|
| 569 | </pre> | 
|---|
| 570 |  | 
|---|
| 571 | <p><var>key</var> defaults to GCC version number, and can be overridden by the | 
|---|
| 572 | <code>--enable-win32-registry=</code><var>key</var><code></code> option. Vendors and distributors | 
|---|
| 573 | who use custom installers are encouraged to provide a different key, | 
|---|
| 574 | perhaps one comprised of vendor name and GCC version number, to | 
|---|
| 575 | avoid conflict with existing installations.  This feature is enabled | 
|---|
| 576 | by default, and can be disabled by <code>--disable-win32-registry</code> | 
|---|
| 577 | option.  This option has no effect on the other hosts. | 
|---|
| 578 |  | 
|---|
| 579 | <br><dt><code>--nfp</code> | 
|---|
| 580 | <dd>Specify that the machine does not have a floating point unit.  This | 
|---|
| 581 | option only applies to <code>m68k-sun-sunos</code><var>n</var><code></code>.  On any other | 
|---|
| 582 | system, <code>--nfp</code> has no effect. | 
|---|
| 583 |  | 
|---|
| 584 | <br><dt><code>--enable-checking</code> | 
|---|
| 585 | <dd><dt><code>--enable-checking=</code><var>list</var><code></code> | 
|---|
| 586 | <dd>When you specify this option, the compiler is built to perform checking | 
|---|
| 587 | of tree node types when referencing fields of that node, and some other | 
|---|
| 588 | internal consistency checks.  This does not change the generated code, | 
|---|
| 589 | but adds error checking within the compiler.  This will slow down the | 
|---|
| 590 | compiler and may only work properly if you are building the compiler | 
|---|
| 591 | with GCC.  This is on by default when building from CVS or snapshots, | 
|---|
| 592 | but off for releases.  More control over the checks may be had by | 
|---|
| 593 | specifying <var>list</var>; the categories of checks available are | 
|---|
| 594 | <code>misc</code>, <code>tree</code>, <code>gc</code>, <code>rtl</code>, <code>rtlflag</code>, | 
|---|
| 595 | <code>gcac</code> and <code>valgrind</code>.  The check <code>valgrind</code> requires the | 
|---|
| 596 | external <code>valgrind</code> simulator, available from | 
|---|
| 597 | <a href="http://developer.kde.org/~sewardj/">http://developer.kde.org/~sewardj/</a>.  The default when <var>list</var> is | 
|---|
| 598 | not specified is <code>misc,tree,gc,rtlflag</code>; the checks <code>rtl</code>, | 
|---|
| 599 | <code>gcac</code> and <code>valgrind</code> are very expensive. | 
|---|
| 600 |  | 
|---|
| 601 | <br><dt><code>--enable-coverage</code> | 
|---|
| 602 | <dd><dt><code>--enable-coverage=</code><var>level</var><code></code> | 
|---|
| 603 | <dd>With this option, the compiler is built to collect self coverage | 
|---|
| 604 | information, every time it is run. This is for internal development | 
|---|
| 605 | purposes, and only works when the compiler is being built with gcc. The | 
|---|
| 606 | <var>level</var> argument controls whether the compiler is built optimized or | 
|---|
| 607 | not, values are <code>opt</code> and <code>noopt</code>. For coverage analysis you | 
|---|
| 608 | want to disable optimization, for performance analysis you want to | 
|---|
| 609 | enable optimization. When coverage is enabled, the default level is | 
|---|
| 610 | without optimization. | 
|---|
| 611 |  | 
|---|
| 612 | <br><dt><code>--enable-nls</code> | 
|---|
| 613 | <dd><dt><code>--disable-nls</code> | 
|---|
| 614 | <dd>The <code>--enable-nls</code> option enables Native Language Support (NLS), | 
|---|
| 615 | which lets GCC output diagnostics in languages other than American | 
|---|
| 616 | English.  Native Language Support is enabled by default if not doing a | 
|---|
| 617 | canadian cross build.  The <code>--disable-nls</code> option disables NLS. | 
|---|
| 618 |  | 
|---|
| 619 | <br><dt><code>--with-included-gettext</code> | 
|---|
| 620 | <dd>If NLS is enabled, the <code>--with-included-gettext</code> option causes the build | 
|---|
| 621 | procedure to prefer its copy of GNU <code>gettext</code>. | 
|---|
| 622 |  | 
|---|
| 623 | <br><dt><code>--with-catgets</code> | 
|---|
| 624 | <dd>If NLS is enabled, and if the host lacks <code>gettext</code> but has the | 
|---|
| 625 | inferior <code>catgets</code> interface, the GCC build procedure normally | 
|---|
| 626 | ignores <code>catgets</code> and instead uses GCC's copy of the GNU | 
|---|
| 627 | <code>gettext</code> library.  The <code>--with-catgets</code> option causes the | 
|---|
| 628 | build procedure to use the host's <code>catgets</code> in this situation. | 
|---|
| 629 |  | 
|---|
| 630 | <br><dt><code>--with-libiconv-prefix=</code><var>dir</var><code></code> | 
|---|
| 631 | <dd>Search for libiconv header files in <code></code><var>dir</var><code>/include</code> and | 
|---|
| 632 | libiconv library files in <code></code><var>dir</var><code>/lib</code>. | 
|---|
| 633 |  | 
|---|
| 634 | <br><dt><code>--with-system-zlib</code> | 
|---|
| 635 | <dd>Use installed zlib rather than that included with GCC.  This option | 
|---|
| 636 | only applies if the Java front end is being built. | 
|---|
| 637 |  | 
|---|
| 638 | <br><dt><code>--enable-obsolete</code> | 
|---|
| 639 | <dd>Enable configuration for an obsoleted system.  If you attempt to | 
|---|
| 640 | configure GCC for a system (build, host, or target) which has been | 
|---|
| 641 | obsoleted, and you do not specify this flag, configure will halt with an | 
|---|
| 642 | error message. | 
|---|
| 643 |  | 
|---|
| 644 | <p>All support for systems which have been obsoleted in one release of GCC | 
|---|
| 645 | is removed entirely in the next major release, unless someone steps | 
|---|
| 646 | forward to maintain the port. | 
|---|
| 647 | </dl> | 
|---|
| 648 |  | 
|---|
| 649 | <p>Some options which only apply to building cross compilers: | 
|---|
| 650 | <dl> | 
|---|
| 651 | <dt><code>--with-sysroot</code> | 
|---|
| 652 | <dd><dt><code>--with-sysroot=</code><var>dir</var><code></code> | 
|---|
| 653 | <dd>Tells GCC to consider <var>dir</var> as the root of a tree that contains a | 
|---|
| 654 | (subset of) the root filesystem of the target operating system. | 
|---|
| 655 | Target system headers, libraries and run-time object files will be | 
|---|
| 656 | searched in there.  The specified directory is not copied into the | 
|---|
| 657 | install tree, unlike the options <code>--with-headers</code> and | 
|---|
| 658 | <code>--with-libs</code> that this option obsoletes.  The default value, | 
|---|
| 659 | in case <code>--with-sysroot</code> is not given an argument, is | 
|---|
| 660 | <code>${gcc_tooldir}/sys-root</code>.  If the specified directory is a | 
|---|
| 661 | subdirectory of <code>${exec_prefix}</code>, then it will be found relative to | 
|---|
| 662 | the GCC binaries if the installation tree is moved. | 
|---|
| 663 |  | 
|---|
| 664 | <br><dt><code>--with-headers</code> | 
|---|
| 665 | <dd><dt><code>--with-headers=</code><var>dir</var><code></code> | 
|---|
| 666 | <dd>Deprecated in favor of <code>--with-sysroot</code>. | 
|---|
| 667 | Specifies that target headers are available when building a cross compiler. | 
|---|
| 668 | The <var>dir</var> argument specifies a directory which has the target include | 
|---|
| 669 | files.  These include files will be copied into the <code>gcc</code> install | 
|---|
| 670 | directory.  <em>This option with the </em><var>dir</var><em> argument is required</em> when | 
|---|
| 671 | building a cross compiler, if <code></code><var>prefix</var><code>/</code><var>target</var><code>/sys-include</code> | 
|---|
| 672 | doesn't pre-exist.  If <code></code><var>prefix</var><code>/</code><var>target</var><code>/sys-include</code> does | 
|---|
| 673 | pre-exist, the <var>dir</var> argument may be omitted.  <code>fixincludes</code> | 
|---|
| 674 | will be run on these files to make them compatible with GCC. | 
|---|
| 675 | <br><dt><code>--with-libs</code> | 
|---|
| 676 | <dd><dt><code>--with-libs=``</code><var>dir1</var><code> </code><var>dir2</var><code> ... </code><var>dirN</var><code>''</code> | 
|---|
| 677 | <dd>Deprecated in favor of <code>--with-sysroot</code>. | 
|---|
| 678 | Specifies a list of directories which contain the target runtime | 
|---|
| 679 | libraries.  These libraries will be copied into the <code>gcc</code> install | 
|---|
| 680 | directory.  If the directory list is omitted, this option has no | 
|---|
| 681 | effect. | 
|---|
| 682 | <br><dt><code>--with-newlib</code> | 
|---|
| 683 | <dd>Specifies that <code>newlib</code> is | 
|---|
| 684 | being used as the target C library.  This causes <code>__eprintf</code> to be | 
|---|
| 685 | omitted from <code>libgcc.a</code> on the assumption that it will be provided by | 
|---|
| 686 | <code>newlib</code>. | 
|---|
| 687 | </dl> | 
|---|
| 688 |  | 
|---|
| 689 | <p>Note that each <code>--enable</code> option has a corresponding | 
|---|
| 690 | <code>--disable</code> option and that each <code>--with</code> option has a | 
|---|
| 691 | corresponding <code>--without</code> option. | 
|---|
| 692 |  | 
|---|
| 693 | <hr /> | 
|---|
| 694 | <p> | 
|---|
| 695 | <a href="./index.html">Return to the GCC Installation page</a> | 
|---|
| 696 |  | 
|---|
| 697 | </body></html> | 
|---|
| 698 |  | 
|---|