Version 7 (modified by Nicolas Pouillon, 15 years ago) (diff)



If you already have cross-compilers available, you may define yours in configuration files, see here.

Get the sources

For Mips (LE and BE) and PowerPC, you will need gnu binutils, gcc and gdb. They are available on or any gnu mirror.,,

Let's unpack sources:

$ mkdir src
$ cd src
$ tar xjf ..../binutils-2.xx.tar.bz2
$ tar xjf ..../gcc-x.x.x.tar.bz2
$ tar xjf ..../gdb-x.x.x.tar.bz2


Now lets compile a Mips LE toolchain. I assume we'll need to compile more toolchains later, so let's share the sources and compile in a separate directory:

$ cd ..
$ mkdir build build/mipsel build/mipsel/binutils build/mipsel/gcc

First, binutils

$ cd build/mipsel/binutils
$ ../../../src/binutils-2.x/configure  --prefix=/where/to/put/it --target=mipsel-unknown-elf \
  --program-prefix=mipsel-unknown-elf- --disable-nls
$ make
$ make install
$ make -C bfd install_libbfd
$ make -C libiberty install_to_libdir

Export the bin directory of your installation path, if not already in it. You should make this permanent by setting the PATH variable in a shell's startup script.

$ export PATH=$PATH:/where/to/put/it/bin

Now gcc

Important ! Use the same --prefix= option for binutils and GCC or your GCC will be invlaid.

$ cd ../gcc
$ ../../../src/gcc-x.x.x/configure  --program-prefix=mipsel-unknown-elf- --prefix=/where/to/put/it \
  --enable-languages=c --target=mipsel-unknown-elf --disable-nls --disable-werror --disable-libssp \
  --disable-threads --without-headers
$ make
$ make install

Now gdb

$ cd ../gdb
$ ../../../src/gdb-x.x.x/configure  --program-prefix=mipsel-unknown-elf- --prefix=/where/to/put/it \
$ make
$ make install

We're done !

You may compile MipsEb and PowerPC toolchain as well, with the same lines, replacing mipsel by mips or powerpc.

Vendor archs

Nios2: Microblaze: