mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-18 15:09:37 +08:00
123 lines
4.5 KiB
HTML
123 lines
4.5 KiB
HTML
|
<html>
|
||
|
<head>
|
||
|
<title>Configuring egcs-1.0 </title>
|
||
|
</head>
|
||
|
<body bgcolor="white">
|
||
|
<h1 align="center">Configuring egcs-1.0</h1>
|
||
|
|
||
|
<p>Like most GNU software, egcs must be configured before it can be built.
|
||
|
This document attempts to describe the recommended configuration procedure
|
||
|
for both native and cross targets.
|
||
|
|
||
|
<p>We use <i>srcdir</i> to refer to the toplevel source directory for
|
||
|
egcs; we use <i>objdir</i> to refer to the toplevel build/object
|
||
|
directory for egcs.
|
||
|
|
||
|
<p>First, we <b>highly</b> recommend that egcs be built into a separate
|
||
|
directory than the sources. This is how we generally build egcs; building
|
||
|
where <i>srcdir</i> == <i>objdir</i> should still work, but doesn't get
|
||
|
extensive testing.
|
||
|
|
||
|
<p>Second, when configuring a native system, either "cc" must be in your
|
||
|
path or you must set CC in your environment before running configure.
|
||
|
Otherwise the configuration scripts may fail.
|
||
|
|
||
|
<p>To configure egcs:
|
||
|
|
||
|
<blockquote>
|
||
|
<tt>
|
||
|
<br>% mkdir <i>objdir</i>
|
||
|
<br>% cd <i>objdir</i>
|
||
|
<br>% <i>srcdir</i>/configure <b>[target]</b> <b>[options]</b>
|
||
|
</tt>
|
||
|
</blockquote>
|
||
|
|
||
|
|
||
|
<p><b>target specification</b>
|
||
|
<ul>
|
||
|
<li> egcs has code to correctly determine the correct value for
|
||
|
<b>target</b> for nearly all native systems. Therefore, we highly
|
||
|
recommend you not provide a configure target when configuring a
|
||
|
native compiler.
|
||
|
|
||
|
<li> <b>target</b> must be specified when configuring a cross compiler;
|
||
|
examples of valid targets would be i960-rtems, m68k-coff, sh-elf, etc.
|
||
|
</ul>
|
||
|
|
||
|
|
||
|
<p><b> options specification</b>
|
||
|
|
||
|
<p>Use <b>options</b> to override several configure time options for
|
||
|
egcs. A partial list of supported <tt>options</tt>:
|
||
|
|
||
|
<ul>
|
||
|
<li> <tt>--prefix=</tt><i>dirname</i> -- Specify the toplevel installation
|
||
|
directory. This is the recommended way to install the tools into a directory
|
||
|
other than the default. The toplevel installation directory defaults to
|
||
|
/usr/local.
|
||
|
|
||
|
<br>These additional options control where certain parts of the distribution
|
||
|
are installed. Normally you should not need to use these options.
|
||
|
<ul>
|
||
|
<li> <tt>--with-local-prefix=</tt><i>dirname</i> -- Specify the installation
|
||
|
directory for local include files. The default is /usr/local.
|
||
|
|
||
|
<li> <tt>--with-gxx-include-dir=</tt><i>dirname</i> -- Specify the installation
|
||
|
directory for g++ header files. The default is /usr/local/include/g++.
|
||
|
</ul>
|
||
|
|
||
|
<li> <tt>--enable-shared</tt> -- Build shared versions of the C++ runtime
|
||
|
libraries if supported <tt>--disable-shared</tt> is the default.
|
||
|
|
||
|
<li> <tt>--enable-haifa</tt> -- Enable the new Haifa instruction scheduler in the
|
||
|
compiler; the new scheduler can significantly improve code on some targets.
|
||
|
<tt>--disable-haifa</tt> is currently the default on all platforms except the HPPA.
|
||
|
|
||
|
<li> <tt>--with-gnu-as</tt> -- Specify that the compiler should assume the GNU
|
||
|
assembler (aka gas) is available.
|
||
|
|
||
|
<li> <tt>--with-gnu-ld</tt> -- Specify that the compiler should assume the GNU
|
||
|
linker (aka gld) is available.
|
||
|
|
||
|
<li> <tt>--with-stabs</tt> -- Specify that stabs debugging information should be used
|
||
|
instead of whatever format the host normally uses. Normally GCC uses the
|
||
|
same debug format as the host system.
|
||
|
|
||
|
<li> <tt>--enable-multilib</tt> -- Specify that multiple target libraries
|
||
|
should be built to support different target variants, calling conventions,
|
||
|
etc. This is the default.
|
||
|
|
||
|
<li> <tt>--enable-threads</tt> -- Specify that the target supports threads.
|
||
|
This only effects the Objective-C compiler and runtime library.
|
||
|
|
||
|
<li> <tt>--enable-threads=</tt><i>lib</i> -- Specify that <i>lib</i> is the
|
||
|
thread support library. This only effects the Objective-C compiler and
|
||
|
runtime library.
|
||
|
|
||
|
<li> <tt>--with-cpu=</tt><i>cpu</i> -- Specify which cpu variant the compiler should
|
||
|
generate code for by default. This is currently only supported on the
|
||
|
RS6000/PowerPC ports.
|
||
|
</ul>
|
||
|
|
||
|
<p>Some options which only apply to building cross compilers:
|
||
|
<ul>
|
||
|
<li> <tt>--with-headers=</tt><i>dir</i> -- Specifies a directory which has target
|
||
|
include files.
|
||
|
<li> <tt>--with-libs=</tt><i>dirs</i> -- Specifies a list of directories which contain
|
||
|
the target runtime libraries.
|
||
|
<li> <tt>--with-newlib</tt> -- Specifies that "newlib" is being used as the target
|
||
|
C library. This causes __eprintf to be omitted from libgcc.a on the
|
||
|
assumption that it will be provided by newlib.
|
||
|
</ul>
|
||
|
|
||
|
<p>Note that each <tt>--enable</tt> option has a corresponding <tt>--disable</tt> option and
|
||
|
that each <tt>--with</tt> option has a corresponding <tt>--without</tt> option.
|
||
|
|
||
|
|
||
|
<p>
|
||
|
<hr>
|
||
|
<i>Last modified on December 2, 1997.</i>
|
||
|
|
||
|
</body>
|
||
|
</html>
|