@file{libiberty}, @file{libobjc} directories as well as any
of their subdirectories.
-The Java directories @file{boehm-gc} and @file{libjava}
-require a modified version of automake 1.4 downloadable from
+The Java directory @file{libjava} requires a modified version of
+automake 1.4 downloadable from
@uref{ftp://gcc.gnu.org/pub/java/automake-gcj-1.4.tar.gz}.
Every other directory requires automake 1.8.5.
@command{bzip2}. It is possible to download a full distribution or specific
components.
-Please refer to our @uref{http://gcc.gnu.org/releases.html,,releases web page}
+Please refer to the @uref{http://gcc.gnu.org/releases.html,,releases web page}
for information on how to obtain GCC@.
The full distribution includes the C, C++, Objective-C, Fortran 77, Fortran
@file{@var{libdir}} unless you overruled it by using
@option{--with-gxx-include-dir=@var{dirname}}. Using this option is
particularly useful if you intend to use several versions of GCC in
-parallel. This is currently supported by @samp{libf2c} and
-@samp{libstdc++}, and is the default for @samp{libobjc} which cannot be
-changed in this case.
+parallel. This is currently supported by @samp{libgfortran},
+@samp{libjava}, @samp{libmudflap}, @samp{libstdc++}, and @samp{libobjc}.
+
@item --enable-languages=@var{lang1},@var{lang2},@dots{}
Specify that only a particular subset of compilers and
stage1 compiler that were miscompiled, or by using @samp{make
bootstrap4} to increase the number of stages of bootstrap.
+Note that using non-standard @code{CFLAGS} can cause bootstrap to fail in
+@file{libiberty}, if these trigger a warning with the new compiler. For
+example using @samp{-O2 -g -mcpu=i686} on @code{i686-pc-linux-gnu} will
+cause bootstrap failure as @code{-mcpu=} is deprecated in 3.4.0 and above.
+
+
If you used the flag @option{--enable-languages=@dots{}} to restrict
the compilers to be built, only those you've actually enabled will be
built. This will of course only build those runtime libraries, for
@samp{WARNING: Couldn't find the global config file.} or
@samp{WARNING: Couldn't find tool init file} that can be ignored.
-@section How can I run the test suite on selected tests?
+@section How can you run the testsuite on selected tests?
In order to run sets of tests selectively, there are targets
@samp{make check-gcc} and @samp{make check-g++}
with a syntax similar to the brace expansion of popular shells:
@smallexample
- @dots{}"--target_board=arm-sim@{-mhard-float,-msoft-float@}@{-O1,-O2,-O3,@}"
+ @dots{}"--target_board=arm-sim/@{-mhard-float,-msoft-float@}@{-O1,-O2,-O3,@}"
@end smallexample
(Note the empty option caused by the trailing comma in the final group.)
@samp{make MAUVEDIR=~/mauve check}.
@uref{http://www-124.ibm.com/developerworks/oss/cvs/jikes/~checkout~/jacks/jacks.html,,Jacks}
-is a free test suite that tests Java compiler front ends. This suite
+is a free testsuite that tests Java compiler front ends. This suite
can be run as part of libgcj testing by placing the Jacks tree within
the libjava testsuite at @file{libjava/testsuite/libjava.jacks/jacks}.
@end itemize
It is normal for some tests to report unexpected failures. At the
-current time our testing harness does not allow fine grained control
-over whether or not a test is expected to fail. We expect to fix this
-problem in future releases.
+current time the testing harness does not allow fine grained control
+over whether or not a test is expected to fail. This problem should
+be fixed in future releases.
@section Submitting test results
@itemize @bullet
@item
-Output from running @file{@var{srcdir}/config.guess}. Do not send us
+Output from running @file{@var{srcdir}/config.guess}. Do not send
that file itself, just the one-line output from running it.
@item
@end ifhtml
didn't include your host/target information or if that information is
incomplete or out of date. Send a note to
-@email{gcc@@gcc.gnu.org} telling us how the information should be changed.
+@email{gcc@@gcc.gnu.org} detailing how the information should be changed.
-If you find a bug, please report it following our
+If you find a bug, please report it following the
@uref{../bugs.html,,bug reporting guidelines}.
If you want to print the GCC manuals, do @samp{cd @var{objdir}; make
GNU/Linux (i386),
HP-UX 10.20, 11.00, and 11.11, and
Solaris/SPARC 2.5.1, 2.6, 2.7, 8, and 9,
+
+@item
+@uref{http://www.openpkg.org/,,OpenPKG} offers binaries for quite a
+number of platforms.
@end itemize
In addition to those specific offerings, you can get a binary
@end html
@heading @anchor{dos}DOS
-Please have a look at our @uref{binaries.html,,binaries page}.
+Please have a look at the @uref{binaries.html,,binaries page}.
You cannot install GCC by itself on MSDOS; it will not compile under
any MSDOS compiler except itself. You need to get the complete
@heading @anchor{h8300-hms}h8300-hms
Renesas H8/300 series of processors.
-Please have a look at our @uref{binaries.html,,binaries page}.
+Please have a look at the @uref{binaries.html,,binaries page}.
The calling convention and structure layout has changed in release 2.6.
All code must be recompiled. The calling convention now passes the
@heading @anchor{hppa*-hp-hpux*}hppa*-hp-hpux*
Support for HP-UX version 9 and older was discontinued in GCC 3.4.
-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.
+We @emph{highly} recommend using gas/binutils on all hppa platforms;
+you may encounter a variety of problems when using the HP assembler.
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
You should be able to continue by saying @samp{make all} after getting
the failure from @samp{make bootstrap}.
+GCC 3.5 requires CVS binutils as of April 28, 2004 or later. Earlier
+versions require binutils 2.8 or later.
+
+The C++ ABI has changed incompatibly in GCC 3.5. COMDAT subspaces are
+used for one-only code and data. This resolves many of the previous
+problems in using C++ on this target. However, the ABI is not compatible
+with the one implemented under HP-UX 11 using secondary definitions.
@html
<hr />
This has been been reported to sometimes occur in unified builds of
binutils and GCC.
-With GCC 3.0 through 3.2, you must use binutils 2.11 or above. As of
-GCC 3.3, binutils 2.14 or later is required.
+GCC 3.0 through 3.2 require binutils 2.11 or above. GCC 3.3 through
+GCC 3.5 require binutils 2.14 or later.
Although the HP assembler can be used for an initial build, it shouldn't
be used with any languages other than C and perhaps Fortran due to its
@uref{http://developer.apple.com/tools/compilers.html} (free
registration required).
-The default stack limit of 512K is too small, which may cause compiles
-to fail with 'Bus error'. Set the stack larger, for instance
-by doing @samp{limit stack 800}. It's a good idea to use the GNU
-preprocessor instead of Apple's @file{cpp-precomp} during the first stage of
-bootstrapping; this is automatic when doing @samp{make bootstrap}, but
-to do it from the toplevel objdir you will need to say @samp{make
-CC='cc -no-cpp-precomp' bootstrap}.
+This version of GCC requires at least cctools-528.
The version of GCC shipped by Apple typically includes a number of
extensions not available in a standard GCC release. These extensions
-are generally specific to Mac programming.
+are generally for backwards compatibility and best avoided.
@html
<hr />
@heading @anchor{*-*-solaris2*}*-*-solaris2*
Sun does not ship a C compiler with Solaris 2. To bootstrap and install
-GCC you first have to install a pre-built compiler, see our
+GCC you first have to install a pre-built compiler, see the
@uref{binaries.html,,binaries page} for details.
The Solaris 2 @command{/bin/sh} will often fail to configure