GCC for RISC OS

From RISC OS

(Difference between revisions)
Jump to: navigation, search
(Add template)
Line 14: Line 14:
You may also wish to install one or more of the following components as well :
You may also wish to install one or more of the following components as well :
-
* [http://www.riscos.info/downloads/gccsdk/latest/cc1plus.zip C++ compiler]
+
* [http://www.riscos.info/downloads/gccsdk/latest/cc1plus.zip C   compiler]
* [http://www.riscos.info/downloads/gccsdk/latest/g77.zip Fortran compiler]
* [http://www.riscos.info/downloads/gccsdk/latest/g77.zip Fortran compiler]
* [http://www.riscos.info/downloads/gccsdk/latest/utils.zip various utils] (bison, make, zip, gzip, flex, diff, ...)
* [http://www.riscos.info/downloads/gccsdk/latest/utils.zip various utils] (bison, make, zip, gzip, flex, diff, ...)
Line 57: Line 57:
* [http://www.reallysmall.co.uk/Pages/normal/software/development/sourcery/sourcery.html Sourcery] : Sourcery will manage the source code that makes up a project but it will also manage the various resources files that are required to produce a RISC OS application. These include Sprite, Message and Template files.
* [http://www.reallysmall.co.uk/Pages/normal/software/development/sourcery/sourcery.html Sourcery] : Sourcery will manage the source code that makes up a project but it will also manage the various resources files that are required to produce a RISC OS application. These include Sprite, Message and Template files.
* [http://adrian.aemulor.com/udp.html ProfileMod] : ProfileMod can be used to profile your code at expense of having to recompile it with the GCC option -finstrument-functions.
* [http://adrian.aemulor.com/udp.html ProfileMod] : ProfileMod can be used to profile your code at expense of having to recompile it with the GCC option -finstrument-functions.
-
* [http://www.riscos.info/websvn/listing.php?repname=gccsdk&path=%2Ftrunk%2Fautobuilder%2Fdevelop%2Fdmalloc%2F&rev=0&sc=0 dmalloc port] : [http://dmalloc.com/ dmalloc] can be used to find memory leaks or memory corruptions due to wrong malloc()/free()/etc. use.  It has been ported to RISC OS and is currently located in [[Using_GCCSDK#GCCSDK_Autobuilder_Usage|GCCSDK Autobuilder]] in the develop/dmalloc subdirectory.
+
* [http://www.riscos.info/websvn/listing.php?repname=gccsdk
-
 
+
-
== Links ==
+
-
 
+
-
* [[GCCSDK|GCC/GCCSDK home]]
+
-
{{GCC and GCCSDK pages}}
+

Revision as of 19:36, 11 April 2007

Contents

Using GCC under RISC OS

Setup

GCC is very easy to setup on RISC OS. The following is what you need to get started with a fully working C compiler.

Additional languages and tools

You may also wish to install one or more of the following components as well :

RISC OS GCC Tutorials and information

In addition, the !gcc application itself contains a number of examples (inside !gcc.examples).

Distributing GCC compiled programs

GCC can compile programs using either the SharedCLibrary or UnixLib as runtime libraries.

SharedCLibrary

When you distribute a GCC compiled program and are using the SharedCLibrary as runtime library (i.e. using option -mlibscl), then no additional support files generally need to be made available with your program.

GCC does produce code which requires a recent version of the SharedCLibrary, however, so you should check (in the !Run file) that your user has a suitably up-to-date version installed. See the Castle documentation for details of this and the Iyonix download page for recent versions of SharedCLibrary suitable for RiscPCs.

Note that all new RISC OS platforms ship with a sufficiently up-to-date version of the module present already.

UnixLib

When you are using UnixLib as runtime library (and that's the default runtime library), then an up-to-date version of some UnixLib support modules need to be used together with your program. The following is an overview of these support modules :

The modules SharedUnixLibrary, Digital Renderer, Iconv and CryptRandom will be RMEnsure'd with their minimal needed version number by the UnixLib code at the moment their functionality is needed. Appropriate error message will be returned when these modules are not available or when they do not have a sufficently high version number. So as a programmer you don't need to RMEnsure those module versions in your programs.

When you distribute a copy of these UnixLib support modules with your program, please also mention the URLs in documentation and/or installation notes or program where up-to-date versions can be found.

Useful programs

The following list contains useful programs helping you to develop with GCC on RISC OS :

  • Sourcery : Sourcery will manage the source code that makes up a project but it will also manage the various resources files that are required to produce a RISC OS application. These include Sprite, Message and Template files.
  • ProfileMod : ProfileMod can be used to profile your code at expense of having to recompile it with the GCC option -finstrument-functions.
  • [http://www.riscos.info/websvn/listing.php?repname=gccsdk
Personal tools