To build all languages in a cross-compiler or other configuration where
3-stage bootstrap is not performed, you need to start with an existing
GCC binary (version 2.95 or later) because source code for language
frontends other than C might use GCC extensions.
So on some platforms /bin/ksh is sufficient, on others it isn't. See the host/target specific instructions for your platform, or use bash to be sure. Then set CONFIG_SHELL in your environment to your “good” shell prior to running configure/make.
zsh is not a fully compliant POSIX shell and will not
work when configuring GCC.
The --with-mpfr configure option should be used if your MPFR
Library is not installed in your default library search path. See also
--with-mpfr-lib and --with-mpfr-include.
Alternatively, if a MPFR source distribution is found in a subdirectory
of your GCC sources named mpfr, it will be built together with
GCC.
The --with-ppl configure option should be used if PPL is not
installed in your default library search path.
The --with-cloog configure option should be used if CLooG is
not installed in your default library search path.
Much of GCC does not use automake, so directly edit the Makefile.in file. Specifically this applies to the gcc, intl, libcpp, libiberty, libobjc directories as well as any of their subdirectories.
For directories that use automake, GCC requires the latest release in
the 1.9.x series, which is currently 1.9.6. When regenerating a directory
to a newer version, please update all the directories using an older 1.9.x
to the latest released version.
Necessary to run ‘make check’ for fixinc.
Necessary to regenerate the top level Makefile.in file from
Makefile.tpl and Makefile.def.
Necessary to build GCC during development because the generated output
files are not included in the SVN repository. They are included in
releases.
Necessary for running make dvi or make pdf to create printable documentation in DVI or PDF format. Texinfo version 4.8 or later is required for make pdf.
Necessary to build GCC documentation during development because the
generated output files are not included in the SVN repository. They are
included in releases.