Search code examples
linuxgccgcc3

Upgrading GCC from 2.9x


I've been trying to upgrade the compiler from 2.95.2 on my PS2 Linux machine (mips) and my head is about to explode. I am not going to claim that I am good with linux.

I'll go over the process I've done first.

gcc 3.3.1 download, configure, install

../gcc-3.3/configure --enable-shared --disable-checking --with-system-zlib --program-suffix=3 --with-gnu-ld --enable-threads=posix

This compiled for about an hour then gave an error, part of it.

> /tmp/cc0GVsc4.s:1175: Error: Can not represent BFD_RELOC_32_PCREL relocation in this object file format
> /tmp/cc0GVsc4.s:1205: Error: Can not represent BFD_RELOC_32_PCREL relocation in this object file format

After some googling this seemed to point to my binutils needed upgrading.

binutils 2.13.2 download install

this compiled/installed ok no complaints.

gcc 3.3.1 back to trying to compile gcc3 and I know get an error during configure.

as: unrecognized option `-mwarm-short-loop'
*** The command '/usr/bin/gcc -o conftest -O2 conftest.c' failed.
*** You must set the enviroment variable CC to a working compiler.

I cant compile even a simple helloworld.cpp program now without getting

as: unrecognized option `-mwarm-short-loop'

Any ideas what the problem is -mwarm-short-loop return zero in google which is unusal. Or is there something specific to upgrading gcc that I have missed.


Solution

  • From http://www.linux-mips.org/wiki/PS2:

    Some people at PS2Dev have ported GCC 3.2.2 and Binutils 2.14 to the Playstation 2, but isn't developed to run Linux (only static ELF's).

    It looks like some non-trivial porting effort is required here.