AROS now has a native gcc C/C++ compiler

Date 23-Nov-2003 20:21:48
Topic: News

Fabio Alemagna has ported gcc C and C++ compilers to AROS. Read more for details.

Update: It has come to our attention that AmigaWorld regular "Drebben" is Matt Parsons (aka Bloodline) of the core AROS development team. For further details turn here.

Update2: A new status update is now available.

As the subject says, I finished the jobs required by the bounty #4, that is porting gcc C and C++ compilers to AROS (and binutils along the way...). The sources are in the AROS CVS, a first binary release, meant for internal testing purposes only, can be found here:,binutils-2.14-aros.tar.bz2

It doesn't contain any instructions on how to set the thing up, but I'll give you them here:

First of all, you need AROS to be completely up to date, so you'll have to wait for the next nightly builds if you have no access to the CVS, then once you get the archive unpack it wherever you want (as long as it's accessible from inside AROS) and then put these lines in your S:User-Startup (assuming you unpacked the archive in sys:):

assign nix: sys:usr
assign usr: nix:
assign bin: usr:bin

path usr:bin add

Now, you must copy AROS' libraries and includes in the right place. If you've got access to CVS and use to compiler AROS by yourself, you can find the includes in the SYS:Include directory and libraries in the SYS:lib directory, if instead you got only the binary archive from the AROS web site, then you need to get also the SDK from there. You can find
the includes in the AROS-SDK/i386/include directory, and the libraries in the AROS-SDK/i386/lib directory.

Once you know where the include files and libraries are, then copy them, respectively, to nix:include and nix:lib. For example, say the includes are in the SYS:Include dir and the libraries are in the SYS:lib dir, then issue these commands from the AROS' shell:

copy SYS:Include/#? nix:include ALL
copy SYS:lib/#? nix:lib

Once all that is done, you're ready to start working with the C and C++ compiler.

Remember that this is the first release, with testing purposes only, so there might be still bugs left. Please send bug reports either to the AROS-Dev ML or to the AROS' bug tracker on the sourceforge site, which can be found here:

One more thing: gcc uses temporary files to achieve some of its goals (pipes are not supported yet), and these temporary files are put in T:. However, T: is usually assigned to Ram:T, and thus temporary files, which can be quite large, subtract memory from the system which could be used and could be needed by the compilation process itself. If you thus experience low memory problems, try to assign T: to some on-disk directories. If that doesn't appeal you, you can also define the environment variables TMP or TMPDIR to contain a location in which temporary files have to be put by gcc.

So far I haven't experienced any crashes, but if any should happen, please try increasing the stack used by the CLI, via the stack command, and see if that has any good effects, but in any case please submit a bug report.

As a final note, hoping I haven't forgotten anything, feel free to spread the news around, as long as a link to this email in the TeamAROS ML archive is provided together with your message, and as long as you _urge_ people to read this email before they try the binaries out.

Remember: this is still a testing release only, you're encouraged to submit bug reports, never assume it won't fail on you.

Best regards,
Fabio Alemagna

This article comes from AmigaWorld - Amiga Community Portal

The URL for this story is: