Tested with

  • lenny i368, gcc (Debian 4.3.2-1.1) 4.3.2 as bootstrap compiler

  • squeeze amd64, gcc (Debian 4.4.5-8) 4.4.5 as bootstrap compiler

Variables

$WORKDIR is our toplevel workdir.

Requirements

Make sure you have a working c and Ada compiler installed on the host you intend to build gnat. On Debian, issue the following command to assure that:

$ sudo apt-get install gcc gnat make

Then change to your $WORKDIR:

$ cd $WORKDIR

Download, verify and extract gcc tarball

$ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.6.0/gcc-4.6.0.tar.bz2
$ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.6.0/gcc-4.6.0.tar.bz2.sig
$ gpg -v gcc-4.6.0.tar.bz2.sig
$ tar xfj gcc-4.6.0.tar.bz2

Download, verify and extract required libraries

$ wget http://www.mpfr.org/mpfr-current/mpfr-3.0.1.tar.bz2
$ wget http://www.mpfr.org/mpfr-current/mpfr-3.0.1.tar.bz2.asc
$ gpg -v mpfr-3.0.1.tar.bz2.asc
$ tar xfj mpfr-3.0.1.tar.bz2
$ mv mpfr-3.0.1/ gcc-4.6.0/mpfr
$ wget ftp://ftp.gmplib.org/pub/gmp-5.0.2/gmp-5.0.2.tar.bz2
$ wget ftp://ftp.gmplib.org/pub/gmp-5.0.2/gmp-5.0.2.tar.bz2.sig
$ gpg -v gmp-5.0.2.tar.bz2.sig
$ tar xfj gmp-5.0.2.tar.bz2
$ mv gmp-5.0.2/ gcc-4.6.0/gmp
$ wget http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz
$ wget http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz.asc
$ gpg -v mpc-0.9.tar.gz.asc
$ tar xfz mpc-0.9.tar.gz
$ mv mpc-0.9/ gcc-4.6.0/mpc

Configure and Build

$ mkdir gcc-build
$ cd gcc-build
$ ../gcc-4.6.0/configure \
      --build=x86_64-linux-gnu \
      --host=x86_64-linux-gnu \
      --target=x86_64-linux-gnu \
      --enable-languages=c,ada \
      --prefix=/usr \
      --with-gmp-include=$(pwd)/gmp \
      --with-gmp-lib=$(pwd)/gmp/.libs \
      --enable-shared \
      --enable-threads=posix \
      --enable-checking=release \
      --disable-nls \
      --disable-multilib \
      --disable-libmudflap \
      --disable-libssp \
      --disable-libffi \
      --disable-libgomp \
      --disable-decimal-float \
      --disable-fixed-point \
      --without-ppl \
      --without-cloog
$ make -j4

Run the testsuite

$ sudo apt-get install dejagnu
$ make check-gcc-ada