Using GCCSDK 3.4.6


Revision as of 15:17, 2 February 2008 by Pnaulls (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Instructions for use of GCCSDK 3.4.6 with Autobuilder

These are maintained for historical reference, and many not work exactly due to the focus being on GCC 4.1

Using the cross-compiler and porting-scripts

The porting-scripts are installed in the 'with-riscos-env' directory given as parameter to the 'configure' script (see 'do-configure' file - by default it's /home/riscos/env). The "ro-" prefixed scripts are wrappers around the similar named and well-known build tools to ensure that the cross-compiler is used instead of the native compiler on your Unix-alike host.

So you use '/home/riscos/env/ro-make' instead of 'make' and your project will be built using the cross-compiler instead of the native compiler. You use '/home/riscos/env/ro-config' instead of './configure' and your project will be 'configured' using the cross-compiler settings. And so on.

Using the cross-compiler with Autobuilder

The Autobuilder infrastructure is meant to be able to cross-compile a broad set of open-source programs with a minimal of manual work (ideally none) allowing to have constant access to recent versions of those programs under RISC OS. It consists of a couple of scripts in the Autobuiler directory gccsdk/autobuilder which fetches the to-be-built programs as source from internet and cross-compiles it using the GCCSDK cross-compiler and its porting-scripts.

The recipe to build these open-source programs is stored in a per program unique subdirectory of the 'autobuilder' directory and is holding one or more files specifying where the source can be found, the patches needing to be applied (if any) and how it needs to be built using the cross-compiler and porting-scripts. And finally how it should be packaged and published (either locally in a directory, either uploaded to a website such as Unix Porting Project download pages.

Personal tools