GCC requires that various tools and packages be available for use in the build procedure. Modifying GCC sources requires additional tools described below.
Tools/packages necessary for building GCC
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.
Tools/packages necessary for modifying GCC
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.
treelang
front end (which is not enabled by default) from a
checkout of the SVN repository; the generated files are not in the
repository. They are included in releases.
Berkeley yacc (byacc) has been reported to work
as well.
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.