adding gnu toolchain build script, to build your own cross compiler

This commit is contained in:
David Welch
2012-05-28 15:19:01 -04:00
parent b0ebc8d38b
commit 590d8b3f07
2 changed files with 52 additions and 0 deletions

13
buildgcc/README Normal file
View File

@@ -0,0 +1,13 @@
A script for building your own gnu toolchain for ARM.
Derived directly from the same script at the mpx project at opencores.org
Keep or change the PREFIX in the script to a path where you want the
binary to end up.
sudo ./build_gcc
then put whatever you had in your prefix/bin in the path. The default
gnuarm would mean /gnuarm/bin goes in the PATH.

39
buildgcc/build_gcc Executable file
View File

@@ -0,0 +1,39 @@
# Usage
# sudo ./build_gcc
# Setup vars
export TARGET=arm-none-eabi
export PREFIX=/gnuarm
export PATH=$PATH:$PREFIX/bin
rm -rf build-*
rm -rf gcc-*
rm -rf binutils-*
# Get archives
wget http://ftp.gnu.org/gnu/binutils/binutils-2.22.tar.bz2
wget http://ftp.gnu.org/gnu/gcc/gcc-4.7.0/gcc-4.7.0.tar.bz2
# Extract archives
bzip2 -dc binutils-2.22.tar.bz2 | tar -xf -
bzip2 -dc gcc-4.7.0.tar.bz2 | tar -xf -
# Build binutils
mkdir build-binutils
cd build-binutils
../binutils-2.22/configure --target=$TARGET --prefix=$PREFIX
make all
make install
# Build GCC
mkdir ../build-gcc
cd ../build-gcc
../gcc-4.7.0/configure --target=$TARGET --prefix=$PREFIX --without-headers --with-newlib --with-gnu-as --with-gnu-ld
make all-gcc
make install-gcc
# Build libgcc.a
make all-target-libgcc CFLAGS_FOR_TARGET="-g -O2"
make install-target-libgcc