How to use a combined gcc/binutils/newlibc source tree to create a cross compiler: Download into a empty directory (${HOME}/tarballs) binutils - http://gnuftp.uib.no/binutils gcc - http://gnuftp.uib.no/gcc/ gmp (dependency for gcc) - http://gnuftp.uib.no/gmp/ mpfr (dependency for gcc) - http://gnuftp.uib.no/mpfr/ mpc (dependency for gcc) - http://gnuftp.uib.no/mpc/ isl (OPTIONAL dependency for gcc) http://isl.gforge.inria.fr/ Create yet another directory, enter it and unpack $ mkdir ${HOME}/src; cd ${HOME}/src $ for i in ${HOME}/tarballs/*; do tar xf $i; done Create combined source tree $ cd gcc-* $ ln -s ../gmp-* gmp $ ln -s ../mpfr-* mpfr $ ln -s ../mpc-* mpc $ ln -s ../isl-* isl $ for i in bfd binutils gas ld opcodes; do ln -s ../binutils-*/$i; done for newlib $ ln -s ../newlib-*/newlib (optional, but when to use it?) $ ln -s ../newlib-*/libgloss Build the cross compiler First, figure out which target you need and that it is available for newlib/gcc and do something like this (adjust your configure options for your needs). You might even speed up the compilation if obj/ is on tmpfs. $ mkdir ${HOME}/obj; cd ${HOME}/obj $ (TARGET=m68k-elf && ${HOME}/src/gcc-*/configure --prefix=/${TARGET} --libexecdir=/${TARGET}/lib --target=${TARGET} --enable-languages=c,c++ --disable-libstdcxx-pch --with-newlib) (optional: fix compiler flags) sed -i 's/\-g /-pipe /' Makefile sed -i '/^CFLAGS / s/$/ -march=native/' Makefile sed -i '/^CXXFLAGS / s/$/ -march=native/' Makefile sed -i '/^CFLAGS_FOR_BUILD/ s/$/ -march=native/' Makefile sed -i '/^CXXFLAGS_FOR_BUILD/ s/$/ -march=native/' Makefile Compile and install into staging area $ make -j$(nproc) $ make -j2 install-strip DESTDIR=$(pwd)/dest Now you can move $(pwd)/dest/${TARGET} where ever you want. If you are sparse on disk space you can trim it a bit as well $ rm -rf dest/*/{include,share} dest/*/lib/libcc* $ find dest -name '*.la' -delete $ find dest -name "*.a" -exec ./dest/*/bin/*-strip -g "{}" \; Notes BSD and MacOS. This will most probably work if you use gmake instead of make. Git If you get your sources with git, you'll also need flex, bison and makeinfo (texinfo). GMP, MPFR, MPC and ISL You can skip this if you already have them installed. They are not target libraries. Keep in mind that you need both the libraries and the headers installed in order to use them. In some distributions that means that you also need to have the -dev or -devel packages installed.