summaryrefslogtreecommitdiffstats
path: root/contrib/gcc/doc/install.texi
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/gcc/doc/install.texi')
-rw-r--r--contrib/gcc/doc/install.texi638
1 files changed, 332 insertions, 306 deletions
diff --git a/contrib/gcc/doc/install.texi b/contrib/gcc/doc/install.texi
index e9f8bee..350d365 100644
--- a/contrib/gcc/doc/install.texi
+++ b/contrib/gcc/doc/install.texi
@@ -123,9 +123,6 @@ Free Documentation License}''.
@node Installing GCC, Binaries, , Top
@end ifnothtml
@ifset indexhtml
-@html
-<h1 align="center">Installing GCC</h1>
-@end html
@ifnothtml
@chapter Installing GCC
@end ifnothtml
@@ -151,11 +148,7 @@ We recommend you browse the entire generic installation instructions before
you proceed.
Lists of successful builds for released versions of GCC are
-available at our web pages for
-@uref{http://gcc.gnu.org/gcc-3.1/buildstat.html,,3.1},
-@uref{http://gcc.gnu.org/gcc-3.0/buildstat.html,,3.0}
-and
-@uref{http://gcc.gnu.org/gcc-2.95/buildstat.html,,2.95}.
+available at @uref{http://gcc.gnu.org/buildstat.html}.
These lists are updated as new information becomes available.
The installation procedure itself is broken into five steps.
@@ -198,7 +191,7 @@ not yet been merged into the main part of this manual.
@end ifhtml
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -214,9 +207,6 @@ not yet been merged into the main part of this manual.
@node Downloading the source, Configuration, , Installing GCC
@end ifnothtml
@ifset downloadhtml
-@html
-<h1 align="center">Downloading GCC</h1>
-@end html
@ifnothtml
@chapter Downloading GCC
@end ifnothtml
@@ -255,7 +245,7 @@ components of the binutils you intend to build alongside the compiler
@file{opcodes}, @dots{}) to the directory containing the GCC sources.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -269,9 +259,6 @@ components of the binutils you intend to build alongside the compiler
@node Configuration, Building, Downloading the source, Installing GCC
@end ifnothtml
@ifset configurehtml
-@html
-<h1 align="center">Installing GCC: Configuration</h1>
-@end html
@ifnothtml
@chapter Installing GCC: Configuration
@end ifnothtml
@@ -368,7 +355,6 @@ subdirectory of @var{objdir} or vice versa.
These additional options control where certain parts of the distribution
are installed. Normally you should not need to use these options.
@table @code
-
@item --exec-prefix=@var{dirname}
Specify the toplevel installation directory for architecture-dependent
files. The default is @file{@var{prefix}}.
@@ -435,9 +421,9 @@ complex conversion patterns. As a basic rule, @var{prefix} (and
@var{suffix}) are prepended (appended) before further transformations
can happen with a special transformation script @var{pattern}.
-As currently implemented, this options only take effect for native
+As currently implemented, these options only take effect for native
builds; cross compiler binaries' names are not transformed even when a
-transformation is explicitly asked for by one of this options.
+transformation is explicitly asked for by one of these options.
For native builds, some of the installed programs are also installed
with the target alias in front of their name, as in
@@ -473,12 +459,49 @@ any in that directory---are not part of GCC@. They are part of other
programs---perhaps many others. (GCC installs its own header files in
another directory which is based on the @option{--prefix} value.)
+Both the local-prefix include directory and the GCC-prefix include
+directory are part of GCC's "system include" directories. Although these
+two directories are not fixed, they need to be searched in the proper
+order for the correct processing of the include_next directive. The
+local-prefix include directory is searched before the GCC-prefix
+include directory. Another characteristic of system include directories
+is that pedantic warnings are turned off for headers in these directories.
+
+Some autoconf macros add @option{-I @var{directory}} options to the
+compiler command line, to ensure that directories containing installed
+packages' headers are searched. When @var{directory} is one of GCC's
+system include directories, GCC will ignore the option so that system
+directories continue to be processed in the correct order. This
+may result in a search order different from what was specified but the
+directory will still be searched.
+
+GCC automatically searches for ordinary libraries using
+@env{GCC_EXEC_PREFIX}. Thus, when the same installation prefix is
+used for both GCC and packages, GCC will automatically search for
+both headers and libraries. This provides a configuration that is
+easy to use. GCC behaves in a manner similar to that when it is
+installed as a system compiler in @file{/usr}.
+
+Sites that need to install multiple versions of GCC may not want to
+use the above simple configuration. It is possible to use the
+@option{--program-prefix}, @option{--program-suffix} and
+@option{--program-transform-name} options to install multiple versions
+into a single directory, but it may be simpler to use different prefixes
+and the @option{--with-local-prefix} option to specify the location of the
+site-specific files for each version. It will then be necessary for
+users to specify explicitly the location of local site libraries
+(e.g., with @env{LIBRARY_PATH}).
+
+The same value can be used for both @option{--with-local-prefix} and
+@option{--prefix} provided it is not @file{/usr}. This can be used
+to avoid the default search of @file{/usr/local/include}.
+
@strong{Do not} specify @file{/usr} as the @option{--with-local-prefix}!
The directory you use for @option{--with-local-prefix} @strong{must not}
contain any of the system's standard header files. If it did contain
them, certain programs would be miscompiled (including GNU Emacs, on
certain targets), because this would override and nullify the header
-file corrections made by the @code{fixincludes} script.
+file corrections made by the @command{fixincludes} script.
Indications are that people who use this option use it based on mistaken
ideas of what it is for. People use it as if it specified where to
@@ -516,15 +539,25 @@ configured with @option{--with-gnu-as}.) If you have more than one
assembler installed on your system, you may want to use this option in
connection with @option{--with-as=@var{pathname}}.
-The systems where it makes a difference whether you use the GNU assembler are
-@samp{hppa1.0-@var{any}-@var{any}}, @samp{hppa1.1-@var{any}-@var{any}},
-@samp{i386-@var{any}-sysv}, @samp{i386-@var{any}-isc},
-@samp{i860-@var{any}-bsd}, @samp{m68k-bull-sysv},
-@samp{m68k-hp-hpux}, @samp{m68k-sony-bsd},
-@samp{m68k-altos-sysv}, @samp{m68000-hp-hpux},
-@samp{m68000-att-sysv}, @samp{@var{any}-lynx-lynxos},
-and @samp{mips-@var{any}}.
-On any other system, @option{--with-gnu-as} has no effect.
+The following systems are the only ones where it makes a difference
+whether you use the GNU assembler. On any other system,
+@option{--with-gnu-as} has no effect.
+
+@itemize bullet
+@item @samp{hppa1.0-@var{any}-@var{any}}
+@item @samp{hppa1.1-@var{any}-@var{any}}
+@item @samp{i386-@var{any}-sysv}
+@item @samp{i386-@var{any}-isc}
+@item @samp{i860-@var{any}-bsd}
+@item @samp{m68k-bull-sysv}
+@item @samp{m68k-hp-hpux}
+@item @samp{m68k-sony-bsd}
+@item @samp{m68k-altos-sysv}
+@item @samp{m68000-hp-hpux}
+@item @samp{m68000-att-sysv}
+@item @samp{@var{any}-lynx-lynxos}
+@item @samp{mips-@var{any}}
+@end itemize
On the systems listed above (except for the HP-PA, for ISC on the
386, and for @samp{mips-sgi-irix5.*}), if you use the GNU assembler,
@@ -601,7 +634,6 @@ predefined set of them.
Some targets provide finer-grained control over which multilibs are built
(e.g., @option{--disable-softfloat}):
@table @code
-
@item arc-*-elf*
biendian.
@@ -829,10 +861,10 @@ Some options which only apply to building cross compilers:
@item --with-headers=@var{dir}
Specifies a directory
which has target include files.
-@emph{This options is required} when building a cross
+@emph{This option is required} when building a cross
compiler, if @file{@var{prefix}/@var{target}/sys-include} doesn't pre-exist.
These include files will be copied into the @file{gcc} install directory.
-Fixincludes will be run on these files to make them compatible with
+@command{fixincludes} will be run on these files to make them compatible with
GCC.
@item --with-libs=``@var{dir1} @var{dir2} @dots{} @var{dirN}''
Specifies a list of directories which contain the target runtime
@@ -850,7 +882,7 @@ Note that each @option{--enable} option has a corresponding
corresponding @option{--without} option.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -864,9 +896,6 @@ corresponding @option{--without} option.
@node Building, Testing, Configuration, Installing GCC
@end ifnothtml
@ifset buildhtml
-@html
-<h1 align="center">Installing GCC: Building</h1>
-@end html
@ifnothtml
@chapter Building
@end ifnothtml
@@ -903,7 +932,7 @@ because you have previously configured the compiler in the source
directory. Make sure you have done all the necessary preparations.
If you build GCC on a BSD system using a directory stored in an old System
-V file system, problems may occur in running @code{fixincludes} if the
+V file system, problems may occur in running @command{fixincludes} if the
System V file system doesn't support symbolic links. These problems
result in a failure to fix the declaration of @code{size_t} in
@file{sys/types.h}. If you find that @code{size_t} is a signed type and
@@ -955,14 +984,17 @@ bootstrap} except that object files from the stage1 and
stage2 of the 3-stage bootstrap of the compiler are deleted as
soon as they are no longer needed.
-
If you want to save additional space during the bootstrap and in
the final installation as well, you can build the compiler binaries
-without debugging information with @samp{make CFLAGS='-O' LIBCFLAGS='-g
--O2' LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap}. This will save
+without debugging information as in the following example. This will save
roughly 40% of disk space both for the bootstrap and the final installation.
(Libraries will still contain debugging information.)
+@example
+ make CFLAGS='-O' LIBCFLAGS='-g -O2' \
+ LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap
+@end example
+
If you wish to use non-default GCC flags when compiling the stage2 and
stage3 compilers, set @code{BOOT_CFLAGS} on the command line when doing
@samp{make bootstrap}. Non-default optimization flags are less well
@@ -1058,9 +1090,9 @@ used to disable building the Ada front end.
Additional build tools (such as @command{gnatmake}) or a working GNAT
run-time library installation are usually @emph{not} required. However,
-if you want to boostrap the compiler using a minimal version of GNAT,
+if you want to bootstrap the compiler using a minimal version of GNAT,
you have to issue the following commands before invoking @samp{make
-boostrap} (this assumes that you start with an unmodified and consistent
+bootstrap} (this assumes that you start with an unmodified and consistent
source distribution):
@example
@@ -1092,7 +1124,7 @@ Currently, when compiling the Ada front end, you cannot use the parallel
build feature described in the previous section.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -1106,9 +1138,6 @@ build feature described in the previous section.
@node Testing, Final install, Building, Installing GCC
@end ifnothtml
@ifset testhtml
-@html
-<h1 align="center">Installing GCC: Testing</h1>
-@end html
@ifnothtml
@chapter Installing GCC: Testing
@end ifnothtml
@@ -1167,6 +1196,11 @@ The testing process will try to test as many components in the GCC
distribution as possible, including the C, C++, Objective-C and Fortran
compilers as well as the C++ and Java runtime libraries.
+While running the testsuite, DejaGnu might emit messages resembling
+@samp{WARNING: Couldn't find the global config file.} or
+@samp{WARNING: Couldn't find tool init file}.
+These messages are harmless and do not affect the validity of the tests.
+
@section How can I run the test suite on selected tests?
As a first possibility to cut down the number of tests that are run it is
@@ -1194,6 +1228,17 @@ To get a list of the possible @file{*.exp} files, pipe the
output of @samp{make check} into a file and look at the
@samp{Running @dots{} .exp} lines.
+To run only the tests for a library, run @samp{make check} from the
+the library's testsuite in a subdirectory of the object directory:
+@file{libstdc++-v3/testsuite} or @file{libcgj/testsuite}.
+
+@section Additional testing for Java Class Libraries
+
+The @uref{http://sources.redhat.com/mauve/,,Mauve Project} provides
+a suite of tests for the Java Class Libraries. This suite can be run
+as part of libgcj testing by specifying the location of the Mauve tree
+when invoking @samp{make}, as in @samp{make MAUVEDIR=~/mauve check}.
+
@section How to interpret test results
After the testsuite has run you'll find various @file{*.sum} and @file{*.log}
@@ -1248,7 +1293,7 @@ few failing testcases are possible even on released versions and you
should look here first if you think your results are unreasonable.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -1262,9 +1307,6 @@ should look here first if you think your results are unreasonable.
@node Final install, , Testing, Installing GCC
@end ifnothtml
@ifset finalinstallhtml
-@html
-<h1 align="center">Installing GCC: Final installation</h1>
-@end html
@ifnothtml
@chapter Installing GCC: Final installation
@end ifnothtml
@@ -1274,6 +1316,9 @@ Now that GCC has been built (and optionally tested), you can install it with
cd @var{objdir}; make install
@end example
+We strongly recommend to install into a target directory where there is
+no previous version of GCC present.
+
That step completes the installation of GCC; user level binaries can
be found in @file{@var{prefix}/bin} where @var{prefix} is the value you
specified with the @option{--prefix} to configure (or @file{/usr/local}
@@ -1286,10 +1331,8 @@ parts of the compiler in @file{@var{libdir}/gcc-lib}; documentation in
info format in @file{@var{infodir}} (normally @file{@var{prefix}/info}).
If you built a released version of GCC using @samp{make bootstrap} then please
-quickly review the build status page for
-@uref{http://gcc.gnu.org/gcc-3.1/buildstat.html,,3.1},
-@uref{http://gcc.gnu.org/gcc-3.0/buildstat.html,,3.0}, or
-@uref{http://gcc.gnu.org/gcc-2.95/buildstat.html,,2.95}.
+quickly review the build status page for your release, available from
+@uref{http://gcc.gnu.org/buildstat.html}.
If your system is not listed for the version of GCC that you built,
send a note to
@email{gcc@@gcc.gnu.org} indicating
@@ -1362,7 +1405,7 @@ Free Software Foundation}, though such manuals may not be for the most
recent version of GCC@.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -1376,9 +1419,6 @@ recent version of GCC@.
@node Binaries, Specific, Installing GCC, Top
@end ifnothtml
@ifset binarieshtml
-@html
-<h1 align="center">Installing GCC: Binaries</h1>
-@end html
@ifnothtml
@chapter Installing GCC: Binaries
@end ifnothtml
@@ -1399,14 +1439,18 @@ contact their makers.
AIX:
@itemize
@item
-@uref{http://freeware.bull.net,,Bull's Freeware and Shareware Archive for AIX};
+@uref{http://www.bullfreeware.com,,Bull's Freeware and Shareware Archive for AIX};
@item
-@uref{http://aixpdslib.seas.ucla.edu,,UCLA Software Library for AIX};
+@uref{http://aixpdslib.seas.ucla.edu,,UCLA Software Library for AIX}.
@end itemize
@item
-DOS---@uref{http://www.delorie.com/djgpp/,,DJGPP};
+DOS---@uref{http://www.delorie.com/djgpp/,,DJGPP}.
+
+@item
+Hitachi H8/300[HS]---@uref{http://h8300-hms.sourceforge.net/,,GNU
+Development Tools for the Hitachi H8/300[HS] Series}.
@item
HP-UX:
@@ -1420,13 +1464,16 @@ HP-UX:
@item
@uref{http://www.sco.com/skunkware/devtools/index.html#gcc,,SCO
-OpenServer/Unixware};
+OpenServer/Unixware}.
@item
-Solaris 2 (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware};
+Sinix/Reliant Unix---@uref{ftp://ftp.siemens.de/sni/mr/pd/gnu/gcc,,Siemens}.
+
+@item
+Solaris 2 (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware}.
@item
-SGI---@uref{http://freeware.sgi.com/,,SGI Freeware};
+SGI---@uref{http://freeware.sgi.com/,,SGI Freeware}.
@item
Windows 95, 98, and NT:
@@ -1434,8 +1481,7 @@ Windows 95, 98, and NT:
@item
The @uref{http://sources.redhat.com/cygwin/,,Cygwin} project;
@item
-@uref{http://www.xraylith.wisc.edu/~khan/software/gnu-win32/,,GNU Win32}
-related projects by Mumit Khan.
+The @uref{http://www.mingw.org/,,MinGW} project.
@end itemize
@item
@@ -1443,10 +1489,6 @@ related projects by Mumit Khan.
Written Word} offers binaries for Solaris 2.5.1, 2.6, 2.7/SPARC, 2.7/Intel,
IRIX 6.2, 6.5, Digital UNIX 4.0D, HP-UX 10.20, and HP-UX 11.00.
-@item
-Hitachi H8/300[HS]---@uref{http://h8300-hms.sourceforge.net/,,GNU
-Development Tools for the Hitachi H8/300[HS] Series}
-
@end itemize
In addition to those specific offerings, you can get a binary
@@ -1459,7 +1501,7 @@ bootstrapping the compiler. An updated version of that disk is in the
works.
@html
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -1473,9 +1515,6 @@ works.
@node Specific, Old, Binaries, Top
@end ifnothtml
@ifset specifichtml
-@html
-<h1 align="center">Host/target specific installation notes for GCC</h1>
-@end html
@ifnothtml
@chapter Host/target specific installation notes for GCC
@end ifnothtml
@@ -1701,7 +1740,7 @@ GNU Compiler Collection on your machine.
@html
<!-- -------- host/target specific issues start here ---------------- -->
-<hr>
+<hr />
@end html
@heading @anchor{1750a-*-*}1750a-*-*
MIL-STD-1750A processors. This target is obsoleted in GCC 3.1.
@@ -1742,8 +1781,7 @@ The 1750A's ``Load/Store Upper/Lower Byte'' instructions are not used by
GCC@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{a29k}a29k
AMD Am29k-family processors. These are normally used in embedded
@@ -1757,15 +1795,13 @@ You may need to make a variant of the file @file{a29k.h} for your
particular configuration.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{a29k-*-bsd}a29k-*-bsd
AMD Am29050 used in a system running a variant of BSD Unix.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{alpha*-*-*}alpha*-*-*
@@ -1780,8 +1816,7 @@ debugging information, not the least of which is incorrect linking of
shared libraries.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{alpha*-dec-osf*}alpha*-dec-osf*
Systems using processors that implement the DEC Alpha architecture and
@@ -1791,6 +1826,13 @@ Tru64 UNIX) operating system, for example the DEC Alpha AXP systems.
Support for versions before @code{alpha*-dec-osf4} is obsoleted in GCC
3.1. (These are the versions which identify themselves as DEC OSF/1.)
+In Digital Unix V4.0, virtual memory exhausted bootstrap failures
+may be fixed by configuring with @option{--with-gc=simple},
+reconfiguring Kernel Virtual Memory and Swap parameters
+per the @command{/usr/sbin/sys_check} Tuning Suggestions,
+or applying the patch in
+@uref{http://gcc.gnu.org/ml/gcc/2002-08/msg00822.html}.
+
In Tru64 UNIX V5.1, Compaq introduced a new assembler that does not
currently (2001-06-13) work with @command{mips-tfile}. As a workaround,
we need to use the old assembler, invoked via the barely documented
@@ -1857,8 +1899,7 @@ DBX@. DEC is now aware of this problem with the assembler and hopes to
provide a fix shortly.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{alphaev5-cray-unicosmk*}alphaev5-cray-unicosmk*
Cray T3E systems running Unicos/Mk.
@@ -1874,8 +1915,10 @@ need to tell GCC where to find the assembler and the linker. The
simplest way to do so is by providing @option{--with-as} and
@option{--with-ld} to @file{configure}, e.g.@:
-@samp{configure --with-as=/opt/ctl/bin/cam --with-ld=/opt/ctl/bin/cld
---enable-languages=c}
+@example
+ configure --with-as=/opt/ctl/bin/cam --with-ld=/opt/ctl/bin/cld \
+ --enable-languages=c
+@end example
The comparison test during @samp{make bootstrap} fails on Unicos/Mk
because the assembler inserts timestamps into object files. You should
@@ -1883,16 +1926,14 @@ be able to work around this by doing @samp{make all} after getting this
failure.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{arc-*-elf}arc-*-elf
Argonaut ARC processor.
This configuration is intended for embedded systems.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{arm-*-aout}arm-*-aout
Advanced RISC Machines ARM-family processors. These are often used in
@@ -1904,23 +1945,20 @@ You may need to make a variant of the file @file{arm.h} for your particular
configuration.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{arm-*-elf}arm-*-elf
This configuration is intended for embedded systems.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{arm*-*-linux-gnu}arm*-*-linux-gnu
We require GNU binutils 2.10 or newer.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{arm-*-riscix}arm-*-riscix
The ARM2 or ARM3 processor running RISC iX, Acorn's port of BSD Unix.
@@ -1937,8 +1975,7 @@ debugging, pass @option{--with-gnu-as} to configure.
You will need to install GNU @command{sed} before you can run configure.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{avr}avr
@@ -1975,8 +2012,7 @@ The following error:
indicates that you should upgrade to a newer version of the binutils.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{c4x}c4x
@@ -2006,8 +2042,7 @@ can also be obtained from:
@end itemize
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{cris}CRIS
@@ -2045,8 +2080,7 @@ information about this platform is available at
@uref{http://developer.axis.com/}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{dos}DOS
@@ -2058,15 +2092,13 @@ compilation package DJGPP, which includes binaries as well as sources,
and includes all the necessary compilation tools and libraries.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{dsp16xx}dsp16xx
A port to the AT&T DSP1610 family of processors.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{*-*-freebsd*}*-*-freebsd*
@@ -2096,15 +2128,17 @@ results on FreeBSD 3.0, 3.4, 4.0, 4.2, 4.3, 4.4, 4.5-STABLE and 5-CURRENT@.
In principle, @option{--enable-threads} is now compatible with
@option{--enable-libgcj} on FreeBSD@. However, it has only been built
-and tested on i386-*-freebsd4.5 and alpha-*-freebsd5.0. The static
+and tested on @samp{i386-*-freebsd4.5} and @samp{alpha-*-freebsd5.0}.
+The static
library may be incorrectly built (symbols are missing at link time).
There is a rare timing-based startup hang (probably involves an
assupmtion about the thread library). Multi-threaded boehm-gc (required for
libjava) exposes severe threaded signal-handling bugs on FreeBSD before
4.5-RELEASE. The alpha port may not fully bootstrap without some manual
-intervention: gcjh will crash with a floating-point exception while
+intervention: @command{gcjh} will crash with a floating-point exception while
generating @file{java/lang/Double.h} (just copy the version built on
-i386-*-freebsd* and rerun the top-level gmake with no arguments and it
+@samp{i386-*-freebsd*} and rerun the top-level @command{gmake} with no
+arguments and it
should properly complete the bootstrap). Other CPU architectures
supported by FreeBSD will require additional configuration tuning in, at
the very least, both boehm-gc and libffi.
@@ -2112,8 +2146,7 @@ the very least, both boehm-gc and libffi.
Shared @file{libgcc_s.so} is now built and installed by default.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{elxsi-elxsi-bsd}elxsi-elxsi-bsd
The Elxsi's C compiler has known limitations that prevent it from
@@ -2122,8 +2155,7 @@ compiling GCC@. Please contact @email{mrs@@wrs.com} for more details.
Support for this processor is obsoleted in GCC 3.1.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{h8300-hms}h8300-hms
Hitachi H8/300 series of processors.
@@ -2136,14 +2168,14 @@ first three arguments in function calls in registers. Structures are no
longer a multiple of 2 bytes.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{hppa*-hp-hpux*}hppa*-hp-hpux*
We @emph{highly} recommend using gas/binutils 2.8 or newer on all hppa
platforms; you may encounter a variety of problems when using the HP
-assembler.
+assembler. The HP assembler does not work with the @samp{hppa64-hp-hpux11*}
+port.
Specifically, @option{-g} does not work on HP-UX (since that system
uses a peculiar debugging format which GCC does not know about), unless you
@@ -2151,15 +2183,15 @@ use GAS and GDB and configure GCC with the
@uref{./configure.html#with-gnu-as,,@option{--with-gnu-as}} and
@option{--with-as=@dots{}} options.
-If you wish to use pa-risc 2.0 architecture support, you must use either
-the HP assembler, gas/binutils 2.11 or a recent
+If you wish to use the pa-risc 2.0 architecture support with a 32-bit
+runtime, you must use either the HP assembler, gas/binutils 2.11 or newer,
+or a recent
@uref{ftp://sources.redhat.com/pub/binutils/snapshots,,snapshot of gas}.
More specific information to @samp{hppa*-hp-hpux*} targets follows.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{hppa*-hp-hpux9}hppa*-hp-hpux9
@@ -2175,8 +2207,7 @@ and @env{SHELL} to @file{/bin/ksh} in your environment.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{hppa*-hp-hpux10}hppa*-hp-hpux10
@@ -2207,31 +2238,53 @@ bootstrap}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{hppa*-hp-hpux11}hppa*-hp-hpux11
-GCC 3.0 and up support HP-UX 11. You must use GNU binutils 2.11 or above on
-this platform. Thread support is not currently implemented for this
-platform, so @option{--enable-threads} does not work.
-See @uref{http://gcc.gnu.org/ml/gcc-prs/2002-01/msg00551.html}
-and @uref{http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00663.html}.
+GCC 3.0 and up support HP-UX 11. On 64-bit capable systems, there
+are two distinct ports. The @samp{hppa2.0w-hp-hpux11*} port generates
+code for the 32-bit pa-risc runtime architecture. It uses the HP
+linker and is currently the default selected by config.guess. The
+optional @samp{hppa64-hp-hpux11*} port generates 64-bit code for the
+pa-risc 2.0 architecture. It must be explicitly selected using the
+@samp{--host=hppa64-hp-hpux11*} configure option. Different prefixes
+must be used if both ports are to be installed on the same system.
+
+You must use GNU binutils 2.11 or above with the 32-bit port. Thread
+support is not currently implemented, so @option{--enable-threads} does
+not work. See:
+
+@itemize
+@item @uref{http://gcc.gnu.org/ml/gcc-prs/2002-01/msg00551.html}
+@item @uref{http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00663.html}.
+@end itemize
+
GCC 2.95.x is not supported under HP-UX 11 and cannot be used to
compile GCC 3.0 and up. Refer to @uref{binaries.html,,binaries} for
information about obtaining precompiled GCC binaries for HP-UX.
+GNU binutils 2.13 or later is recommended with the 64-bit port.
+The HP assembler is not supported. It is @emph{highly} recommended
+that the GNU linker be used as well. Either binutils must be built
+prior to gcc, or a binary distribution of gcc or binutils must be
+obtained for the initial builds. When starting with a HP compiler,
+it is preferable to use the ANSI compiler as the bundled compiler
+only supports traditional C. Bootstrapping with the bundled compiler
+is tested infrequently and problems often arise because of the subtle
+differences in semantics between traditional and ISO C. There also
+have been problems reported with various binary distributions. This
+port still is undergoing significant development.
+
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{i370-*-*}i370-*-*
This port is very preliminary and has many known bugs. We hope to
have a higher-quality port for this machine soon.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{*-*-linux-gnu}*-*-linux-gnu
@@ -2241,7 +2294,6 @@ The patch @uref{glibc-2.2.patch,,glibc-2.2.patch}, that is to be
applied in the GCC source tree, fixes the compatibility problems.
@html
-</p>
@end html
@html
@@ -2258,8 +2310,7 @@ glibc 2.2.4 whether patches for GCC 3.0 are needed. You can use glibc
2.2.3 with GCC 3.0, just do not try to recompile it.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-linux*oldld}i?86-*-linux*oldld
Use this configuration to generate @file{a.out} binaries on Linux-based
@@ -2269,8 +2320,7 @@ installed.
This configuration is obsoleted in GCC 3.1.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-linux*aout}i?86-*-linux*aout
Use this configuration to generate @file{a.out} binaries on Linux-based
@@ -2278,8 +2328,7 @@ GNU systems. This configuration is being superseded. You must use
gas/binutils version 2.5.2 or later.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-linux*}i?86-*-linux*
@@ -2290,23 +2339,20 @@ possible you have a hardware problem. Further information on this can be
found on @uref{http://www.bitwizard.nl/sig11/,,www.bitwizard.nl}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-sco}i?86-*-sco
Compilation with RCC is recommended. Also, it may be a good idea to
link with GNU malloc instead of the malloc that comes with the system.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-sco3.2v4}i?86-*-sco3.2v4
Use this configuration for SCO release 3.2 version 4.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-sco3.2v5*}i?86-*-sco3.2v5*
Use this for the SCO OpenServer Release 5 family of operating systems.
@@ -2381,8 +2427,7 @@ engineering and will hopefully be addressed in later releases.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-udk}i?86-*-udk
@@ -2401,8 +2446,10 @@ from the right place) while making the tools not think we're actually
building a cross compiler. The easiest way to do this is with a configure
command like this:
-@samp{CC=/udk/usr/ccs/bin/cc @var{/your/path/to}/gcc/configure
---host=i686-pc-udk --target=i686-pc-udk --program-prefix=udk-}
+@example
+ CC=/udk/usr/ccs/bin/cc @var{/your/path/to}/gcc/configure \
+ --host=i686-pc-udk --target=i686-pc-udk --program-prefix=udk-
+@end example
@emph{You should substitute @samp{i686} in the above command with the appropriate
processor for your host.}
@@ -2416,8 +2463,7 @@ have installed.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-*-isc}i?86-*-isc
This configuration is obsoleted in GCC 3.1.
@@ -2429,8 +2475,7 @@ In ISC version 4.1, @command{sed} core dumps when building
@file{deduced.h}. Use the version of @command{sed} from version 4.0.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-ibm-aix}i?86-ibm-aix
This configuration is obsoleted in GCC 3.1.
@@ -2439,8 +2484,7 @@ You need to use GAS version 2.1 or later, and LD from
GNU binutils version 2.2 or later.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-sequent-bsd}i?86-sequent-bsd
This configuration is obsoleted in GCC 3.1.
@@ -2448,8 +2492,7 @@ This configuration is obsoleted in GCC 3.1.
Go to the Berkeley universe before compiling.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ix86-sequent-ptx1*}i?86-sequent-ptx1*, i?86-sequent-ptx2*, i?86-sequent-sysv3*
This configuration is obsoleted in GCC 3.1.
@@ -2461,8 +2504,7 @@ If you encounter this problem, upgrade your operating system or
use @command{bash} (the GNU shell) to run @code{fixproto}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{i860-intel-osf*}i860-intel-osf*
All support for the i860 processor is obsoleted in GCC 3.1.
@@ -2506,8 +2548,7 @@ insert the line
These problems don't exist in operating system version 1.1.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ia64-*-linux}ia64-*-linux
IA-64 processor (also known as IPF, or Itanium Processor Family)
@@ -2531,8 +2572,7 @@ GCC 3.0.2 is believed to be fully ABI compliant, and hence no more major
ABI changes are expected.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{*-lynx-lynxos}*-lynx-lynxos
LynxOS 2.2 and earlier comes with GCC 1.x already installed as
@@ -2543,8 +2583,7 @@ COFF format object files and executables; otherwise GCC will use the
installed tools, which produce @file{a.out} format executables.
@html
-</p>
-<hr>
+<hr />
<!-- rs6000-ibm-aix*, powerpc-ibm-aix* -->
@end html
@heading @anchor{*-ibm-aix*}*-ibm-aix*
@@ -2572,6 +2611,35 @@ interoperate with GCC@.
Building @file{libstdc++.a} requires a fix for a AIX Assembler bug
APAR IY26685 (AIX 4.3) or APAR IY25528 (AIX 5.1).
+@samp{libstdc++} in GCC 3.2 increments the major version number of the
+shared object and GCC installation places the @file{libstdc++.a}
+shared library in a common location which will overwrite the GCC 3.1
+version of the shared library. Applications either need to be
+re-linked against the new shared library or the GCC 3.1 version of the
+@samp{libstdc++} shared object needs to be available to the AIX
+runtime loader. The GCC 3.1 @samp{libstdc++.so.4} shared object can
+be installed for runtime dynamic loading using the following steps to
+set the @samp{F_LOADONLY} flag in the shared object for @emph{each}
+multilib @file{libstdc++.a} installed:
+
+Extract the shared object from each the GCC 3.1 @file{libstdc++.a}
+archive:
+@example
+ % ar -x libstdc++.a libstdc++.so.4
+@end example
+
+Enable the @samp{F_LOADONLY} flag so that the shared object will be
+available for runtime dynamic loading, but not linking:
+@example
+ % strip -e libstdc++.so.4
+@end example
+
+Archive the runtime-only shared object in the GCC 3.2
+@file{libstdc++.a} archive:
+@example
+ % ar -q libstdc++.a libstdc++.so.4
+@end example
+
Linking executables and shared libraries may produce warnings of
duplicate symbols. The assembly files generated by GCC for AIX always
have included multiple symbol definitions for certain global variable
@@ -2624,16 +2692,14 @@ A default can be specified with the @option{-mcpu=@var{cpu_type}}
switch and using the configure option @option{--with-cpu-@var{cpu_type}}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m32r-*-elf}m32r-*-elf
Mitsubishi M32R processor.
This configuration is intended for embedded systems.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68000-hp-bsd}m68000-hp-bsd
HP 9000 series 200 running BSD@. Note that the C compiler that comes
@@ -2641,24 +2707,21 @@ with this system cannot compile GCC; contact @email{law@@cygnus.com}
to get binaries of GCC for bootstrapping.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m6811-elf}m6811-elf
Motorola 68HC11 family micro controllers. These are used in embedded
applications. There are no standard Unix configurations.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m6812-elf}m6812-elf
Motorola 68HC12 family micro controllers. These are used in embedded
applications. There are no standard Unix configurations.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-altos}m68k-altos
Altos 3068. This configuration is obsoleted in GCC 3.1.
@@ -2667,8 +2730,7 @@ You must use the GNU assembler, linker and debugger.
Also, you must fix a kernel bug.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-apple-aux}m68k-apple-aux
Apple Macintosh running A/UX@.
@@ -2687,8 +2749,7 @@ You will also a patched version of @file{/bin/ld} there that
raises some of the arbitrary limits found in the original.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-att-sysv}m68k-att-sysv
AT&T 3b1, a.k.a.@: 7300 PC@. This version of GCC cannot
@@ -2698,8 +2759,7 @@ bootstrap. Binaries are available from the OSU-CIS archive, at
@uref{ftp://archive.cis.ohio-state.edu/pub/att7300/}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-bull-sysv}m68k-bull-sysv
Bull DPX/2 series 200 and 300 with BOS-2.00.45 up to BOS-2.01.
@@ -2714,8 +2774,7 @@ assembler or for availability of the DPX/2 port of GAS, contact
@email{F.Pierresteguy@@frcl.bull.fr}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-crds-unos}m68k-crds-unos
Use @samp{configure unos} for building on Unos.
@@ -2754,8 +2813,7 @@ If linking @file{cc1} fails, try putting the object files into a library
and linking from that library.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-hp-hpux}m68k-hp-hpux
HP 9000 series 300 or 400 running HP-UX@. HP-UX version 8.0 has a bug in
@@ -2813,8 +2871,7 @@ to look like:
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-*-nextstep*}m68k-*-nextstep*
These configurations are obsoleted in GCC 3.1.
@@ -2864,8 +2921,7 @@ for this sequence to work.
@end example
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-ncr-*}m68k-ncr-*
On the Tower models 4@var{n}0 and 6@var{n}0, by default a process is not
@@ -2881,8 +2937,7 @@ MAXUMEM = 4096
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-sun}m68k-sun
Sun 3. We do not provide a configuration file to use the Sun FPA by
@@ -2890,8 +2945,7 @@ default, because programs that establish signal handlers for floating
point traps inherently cannot work with the FPA@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m68k-sun-sunos4.1.1}m68k-sun-sunos4.1.1
@@ -2899,8 +2953,7 @@ It is reported that you may need the GNU assembler on this platform.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m88k-*-svr3}m88k-*-svr3
Motorola m88k running the AT&T/Unisoft/Motorola V.3 reference port.
@@ -2918,8 +2971,7 @@ It is best, however, to use an older version of GCC for bootstrapping
if you have one.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m88k-*-dgux}m88k-*-dgux
Motorola m88k running DG/UX@.
@@ -2938,8 +2990,7 @@ If you do not specify a configuration name, @file{configure} guesses the
configuration based on the current software development environment.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{m88k-tektronix-sysv3}m88k-tektronix-sysv3
Tektronix XD88 running UTekV 3.2e.
@@ -2954,8 +3005,7 @@ Otherwise you may have trouble getting clean comparisons
between stages.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-*-*}mips-*-*
If you use the 1.31 version of the MIPS assembler (such as was shipped
@@ -3008,8 +3058,7 @@ If you override the @code{CC} make variable and use the MIPS
compilers, you may need to add @option{-Wf,-XNg1500 -Olimit 3000}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-dec-*}mips-dec-*
These configurations are obsoleted in GCC 3.1.
@@ -3042,8 +3091,7 @@ If you override the @code{CC} make variable and use the MIPS
compilers, you may need to add @option{-Wf,-XNg1500 -Olimit 3000}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-mips-riscos*}mips-mips-riscos*
These configurations are obsoleted in GCC 3.1.
@@ -3073,8 +3121,7 @@ BSD 4.3 configuration for RISC-OS, revision @var{rev}.
System V.4 configuration for RISC-OS, revision @var{rev}.
@html
-</p>
-<hr>
+<hr />
@end html
@item mips-mips-riscos@var{rev}sysv
System V.3 configuration for RISC-OS, revision @var{rev}.
@@ -3086,8 +3133,7 @@ RISC-OS revision 4 to RISC-OS revision 5. This has the effect of
avoiding a linker bug.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-sgi-irix4}mips-sgi-irix4
This configuration is obsoleted in GCC 3.1.
@@ -3119,8 +3165,7 @@ ignored.
@end example
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-sgi-irix5}mips-sgi-irix5
@@ -3165,8 +3210,7 @@ however, you may have success with @command{smake} on IRIX 5.2 if you do
not have GNU @command{make} available.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-sgi-irix6}mips-sgi-irix6
@@ -3195,6 +3239,27 @@ then your version of @command{cc} uses the O32 or N64 ABI by default. You
should set the environment variable @env{CC} to @samp{cc -n32}
before configuring GCC@.
+If you want the resulting @command{gcc} to run on old 32-bit systems
+with the MIPS R4400 CPU, you need to ensure that only code for the mips3
+instruction set architecture (ISA) is generated. While GCC 3.x does
+this correctly, both GCC 2.95 and SGI's MIPSpro @command{cc} may change
+the ISA depending on the machine where GCC is built. Using one of them
+as the bootstrap compiler may result in mips4 code, which won't run at
+all on mips3-only systems. For the test program above, you should see:
+
+@example
+test.o: ELF N32 MSB mips-3 @dots{}
+@end example
+
+If you get:
+
+@example
+test.o: ELF N32 MSB mips-4 @dots{}
+@end example
+
+instead, you should set the environment variable @env{CC} to @samp{cc
+-n32 -mips3} or @samp{gcc -mips3} respectively before configuring GCC@.
+
GCC on IRIX 6 is usually built to support both the N32 and N64 ABIs. If
you build GCC on a system that doesn't have the N64 libraries installed,
you need to configure with @option{--disable-multilib} so GCC doesn't
@@ -3226,7 +3291,7 @@ its maximum of 262144 bytes. If you have root access, you can use the
GCC does not correctly pass/return structures which are
smaller than 16 bytes and which are not 8 bytes. The problem is very
involved and difficult to fix. It affects a number of other targets also,
-but IRIX 6 is affected the most, because it is a 64 bit target, and 4 byte
+but IRIX 6 is affected the most, because it is a 64-bit target, and 4 byte
structures are common. The exact problem is that structures are being padded
at the wrong end, e.g.@: a 4 byte structure is loaded into the lower 4 bytes
of the register when it should be loaded into the upper 4 bytes of the
@@ -3244,8 +3309,7 @@ See @uref{http://freeware.sgi.com/,,http://freeware.sgi.com/} for more
information about using GCC on IRIX platforms.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{mips-sony-sysv}mips-sony-sysv
Sony MIPS NEWS@. This configuration is obsoleted in GCC 3.1.
@@ -3255,8 +3319,7 @@ COFF)@. In particular, the linker does not like the code generated by
GCC when shared libraries are linked in.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ns32k-encore}ns32k-encore
This configuration is obsoleted in GCC 3.1.
@@ -3264,8 +3327,7 @@ This configuration is obsoleted in GCC 3.1.
Encore ns32000 system. Encore systems are supported only under BSD@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ns32k-*-genix}ns32k-*-genix
National Semiconductor ns32000 system. This configuration is obsoleted
@@ -3275,8 +3337,7 @@ Genix has bugs in @code{alloca} and @code{malloc}; you must get the
compiled versions of these from GNU Emacs.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ns32k-sequent}ns32k-sequent
This configuration is obsoleted in GCC 3.1.
@@ -3284,8 +3345,7 @@ This configuration is obsoleted in GCC 3.1.
Go to the Berkeley universe before compiling.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{ns32k-utek}ns32k-utek
UTEK ns32000 system (``merlin''). This configuration is obsoleted in
@@ -3296,8 +3356,7 @@ The C compiler that comes with this system cannot compile GCC; contact
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc*-*-*}powerpc-*-*
@@ -3305,8 +3364,7 @@ You can specify a default version for the @option{-mcpu=@var{cpu_type}}
switch by using the configure option @option{--with-cpu-@var{cpu_type}}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-darwin*}powerpc-*-darwin*
PowerPC running Darwin (Mac OS X kernel).
@@ -3320,7 +3378,7 @@ binaries are available at
registration required).
Versions of the assembler prior to ``cctools-364'' cannot handle the
-4-argument form of rlwinm and related mask-using instructions. Darwin
+4-argument form of @code{rlwinm} and related mask-using instructions. Darwin
1.3 (Mac OS X 10.0) uses cctools-353 for instance. To get cctools-364,
check out @file{cctools} with tag @samp{Apple-364}, build it, and
install the assembler as @file{usr/bin/as}. See
@@ -3339,25 +3397,22 @@ number of extensions not available in a standard GCC release. These
extensions are generally specific to Mac programming.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-elf}powerpc-*-elf, powerpc-*-sysv4
PowerPC system in big endian mode, running System V.4.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-linux-gnu*}powerpc-*-linux-gnu*
You will need
-@uref{ftp://ftp.kernel.org/pub/linux/devel/binutils,,binutils 2.12.90.0.7}
+@uref{ftp://ftp.kernel.org/pub/linux/devel/binutils,,binutils 2.13.90.0.10}
or newer for a working GCC@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-netbsd*}powerpc-*-netbsd*
PowerPC system in big endian mode running NetBSD@. To build the
@@ -3365,60 +3420,52 @@ documentation you will need Texinfo version 4.1 (NetBSD 1.5.1 included
Texinfo version 3.12).
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-eabiaix}powerpc-*-eabiaix
Embedded PowerPC system in big endian mode with @option{-mcall-aix} selected as
the default.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-eabisim}powerpc-*-eabisim
Embedded PowerPC system in big endian mode for use in running under the
PSIM simulator.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpc-*-eabi}powerpc-*-eabi
Embedded PowerPC system in big endian mode.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpcle-*-elf}powerpcle-*-elf, powerpcle-*-sysv4
PowerPC system in little endian mode, running System V.4.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpcle-*-eabisim}powerpcle-*-eabisim
Embedded PowerPC system in little endian mode for use in running under
the PSIM simulator.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpcle-*-eabi}powerpcle-*-eabi
Embedded PowerPC system in little endian mode.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{powerpcle-*-winnt}powerpcle-*-winnt, powerpcle-*-pe
PowerPC system in little endian mode running Windows NT@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{romp-*-aos}romp-*-aos, romp-*-mach
These configurations are obsoleted in GCC 3.1.
@@ -3431,22 +3478,19 @@ floating-point constants and can be safely ignored; the stage 3 compiler
is correct.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{s390-*-linux*}s390-*-linux*
S/390 system running Linux for S/390@.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{s390x-*-linux*}s390x-*-linux*
-zSeries system (64 Bit) running Linux for zSeries@.
+zSeries system (64-bit) running Linux for zSeries@.
@html
-</p>
-<hr>
+<hr />
@end html
@c Please use Solaris 2 to refer to all release of Solaris, starting
@c with 2.0 until 2.6, 7, and 8. Solaris 1 was a marketing name for
@@ -3461,9 +3505,7 @@ GCC you first have to install a pre-built compiler, see our
The Solaris 2 @command{/bin/sh} will often fail to configure
@file{libstdc++-v3}, @file{boehm-gc} or
@file{libjava}. If you encounter this problem, set @env{CONFIG_SHELL} to
-@command{/bin/ksh} in your environment and run @command{make bootstrap} again.
-Another possibility that sometimes helps is to remove
-@file{*-*-solaris2*/config.cache}.
+@command{/bin/ksh} in your environment before running @command{configure}.
Solaris 2 comes with a number of optional OS packages. Some of these
packages are needed to use GCC fully, namely @code{SUNWarc},
@@ -3501,8 +3543,7 @@ There are patches for Solaris 2.6 (105633-56 or newer for SPARC,
108653-22 for Intel) that fix this bug.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc-sun-solaris2*}sparc-sun-solaris2*
@@ -3514,8 +3555,10 @@ information.
Sun @command{as} 4.x is broken in that it cannot cope with long symbol names.
A typical error message might look similar to the following:
-@samp{/usr/ccs/bin/as: "/var/tmp/ccMsw135.s", line 11041:
-error: can't compute value of an expression involving an external symbol.}
+@smallexample
+/usr/ccs/bin/as: "/var/tmp/ccMsw135.s", line 11041: error:
+ can't compute value of an expression involving an external symbol.
+@end smallexample
This is Sun bug 4237974. This is fixed with patch 108908-02 for Solaris
2.6 and has been fixed in later (5.x) versions of the assembler,
@@ -3535,8 +3578,7 @@ that supports only 32-bit binaries, one must configure with
64-bit target libraries.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc-sun-solaris2.7}sparc-sun-solaris2.7
@@ -3578,7 +3620,7 @@ the Solaris 7 Recommended Patch Cluster.
@html
<p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc-sun-sunos4*}sparc-sun-sunos4*
@@ -3597,8 +3639,7 @@ be due to a bug in @command{sh}. You can probably get around it by running
@command{make}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc-unknown-linux-gnulibc1}sparc-unknown-linux-gnulibc1
@@ -3608,8 +3649,7 @@ for this platform, too.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc-*-linux*}sparc-*-linux*
@@ -3619,8 +3659,7 @@ releases mishandled unaligned relocations on @code{sparc-*-*} targets.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparc64-*-*}sparc64-*-*
@@ -3631,8 +3670,7 @@ invocation with an environment that causes @command{configure} to
recognize (via @samp{uname -a}) the system as @samp{sparc-*-*} instead.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{sparcv9-*-solaris2*}sparcv9-*-solaris2*
@@ -3647,8 +3685,7 @@ step in order to bootstrap this target with the Sun compiler:
specifies the v9 architecture to the Sun linker and assembler.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{#*-*-sysv*}*-*-sysv*
On System V release 3, you may get this error message
@@ -3682,16 +3719,14 @@ On a System V release 4 system, make sure @file{/usr/bin} precedes
@file{/usr/ucb} uses libraries which have bugs.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{vax-dec-ultrix}vax-dec-ultrix
Don't try compiling with VAX C (@code{vcc}). It produces incorrect code
in some cases (for example, when @code{alloca} is used).
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{we32k-*-*}we32k-*-*
These computers are also known as the 3b2, 3b5, 3b20 and other similar
@@ -3729,8 +3764,7 @@ You may need to raise the ULIMIT setting to build a C++ compiler,
as the file @file{cc1plus} is larger than one megabyte.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{xtensa-*-elf}xtensa-*-elf
@@ -3748,8 +3782,7 @@ downloaded files include a customized copy of this header file,
which you can use to replace the default header file.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{xtensa-*-linux*}xtensa-*-linux*
@@ -3761,10 +3794,9 @@ respects, this target is the same as the
@uref{#xtensa-*-elf,,@samp{xtensa-*-elf}} target.
@html
-</p>
-<hr>
+<hr />
@end html
-@heading @anchor{windows}Microsoft Windows (32 bit)
+@heading @anchor{windows}Microsoft Windows (32-bit)
A port of GCC 2.95.x is included with the
@uref{http://www.cygwin.com/,,Cygwin environment}.
@@ -3773,8 +3805,7 @@ Current (as of early 2001) snapshots of GCC will build under Cygwin
without modification.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{os2}OS/2
@@ -3787,8 +3818,7 @@ An older copy of GCC 2.8.1 is included with the EMX tools available at
ftp://ftp.leo.org/pub/comp/os/os2/leo/devtools/emx+gcc/}.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{older}Older systems
@@ -3838,8 +3868,7 @@ about GCC on such systems (which may no longer be applicable to
current GCC) is to be found in the GCC texinfo manual.
@html
-</p>
-<hr>
+<hr />
@end html
@heading @anchor{elf_targets}all ELF targets (SVR4, Solaris 2, etc.)
@@ -3850,8 +3879,7 @@ automatically.
@html
-</p>
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -3863,8 +3891,7 @@ automatically.
@ifset oldhtml
@include install-old.texi
@html
-</p>
-<hr>
+<hr />
<p>
@end html
@ifhtml
@@ -3876,8 +3903,7 @@ automatically.
@ifset gfdlhtml
@include fdl.texi
@html
-</p>
-<hr>
+<hr />
<p>
@end html
@ifhtml
OpenPOWER on IntegriCloud