A new version of the IOP compiler is now available. It can be found
in the downloads section of ps2dev.sourceforge.net. If you still have
the files binutils-2.9.1.tar.gz and gcc-2.8.1.tar.gz, you do NOT have
to download them again (these files will never change).
The changes made in this revision include:
* The patches have been split into a binutils patch, and a gcc
patch to make it easier to upgrade one package without changing the
other and the install script has been rewritten to make installing and
upgrading more flexible.
* An iop build target has been added to make it easy to configure
and install. Configuring with the --target=iop option will create and
install the iop utilities with the "iop-" prefix.
* Support for irx modules has been added to the linker. By
default the linker will produce an irx module. The linker can still
produce elf files if you use the "-m elf32elmip" option.
* gcc now supports the section attribute when configured to create
elf files or irx modules.
* gcc no longer produces a call to __main () at the beginning of
the main function. This call is being moved to the C runtime library
startup file. In the future if you wish to support linking against C++
code in your module, you will be able to use an alternate crt file.
NOTE: iop-objcopy and iop-objstrip do not know how to play nice with
irx modules yet. Irx modules need to keep their relocation tables;
using iop-objstrip --strip-all on an irx module will remove the
relocation tables, breaking the module. If you want to strip all of
the symbols from your irx module, pass the --strip-all flag to the
linker when you link the module.
|