#!/usr/bin/env bash echo "<<< Install GCC prerequisites >>>" apt install -y make texinfo g++ gcc git libgmp3-dev libmpfr-dev libmpc-dev flex install-info info bison GCC_VERSION=13.1.0 echo "<<< Build GCC >>>" mkdir -p psx-gcc cd psx-gcc echo "<<< clone binutils >>>" git clone git://sourceware.org/git/binutils-gdb.git cd binutils-gdb mkdir -p build cd build echo "<<< Configure binutils >>>" ../configure --target=mipsel-linux-gnu --with-sysroot --disable-nls --disable-werror if [ $? -ne 0 ]; then exit 1 fi echo "<<< Make binutils >>>" make -j$(nproc) if [ $? -ne 0 ]; then exit 1 fi echo "<<< Install binutils >>>" make -j$(nproc) install if [ $? -ne 0 ]; then exit 1 fi cd ../.. echo "<<< clone gcc >>>" git clone --recurse-submodules git://gcc.gnu.org/git/gcc.git cd gcc echo "<<< checkout gcc $GCC_VERSION >>>" git checkout "releases/gcc-$GCC_VERSION" mkdir -p build cd build echo "<<< configure gcc >>>" ../configure --target=mipsel-linux-gnu --disable-nls --enable-languages=c,c++ --without-headers if [ $? -ne 0 ]; then exit 1 fi echo "<<< Make gcc >>>" make -j$(nproc) all-gcc if [ $? -ne 0 ]; then exit 1 fi echo "<<< Install gcc >>>" make -j$(nproc) install-gcc if [ $? -ne 0 ]; then exit 1 fi echo "<<< Delete GCC folder >>>" cd /tmp rm -fr psx-gcc