home *** CD-ROM | disk | FTP | other *** search
/ RISCWORLD 7 / RISCWORLD_VOL7.iso / Software / Issue2 / SDL.ARC / !unixlib / !Help < prev    next >
Encoding:
Text File  |  2004-10-05  |  4.4 KB  |  115 lines

  1.                                 UnixLib 4.0
  2.                                 ~~~~~~~~~~~
  3.  
  4. This document provides a VERY short introduction to UnixLib, and only covers
  5. the RISC OS specific details of using UnixLib. It does not document what
  6. facilites it provides, or how it works. For this you should look at the
  7. various documents elsewhere in this distribution, the source, and a proper
  8. manual (like <URL:http://www.opengroup.org/onlinepubs/007904975/download/>
  9. and <URL:http://www.opengroup.org/onlinepubs/007908799/>).
  10.  
  11. The UnixLib is part of the RISC OS GCC SDK and its home page is at
  12. <URL:http://hard-mofo.dsvr.net/gcc/>. This should be checked for
  13. updates and bug-fixes.
  14.  
  15.  
  16. What
  17. ~~~~
  18.  
  19. UnixLib is a Run-Time Library for the RISC OS based computers that
  20. provides a mixed System V / BSD interface for C and C++ programs.  It
  21. is also an alternative to the "Stubs" and "AnsiLib" libraries supplied
  22. with the Norcroft C compiler.
  23.  
  24. It is also the default Run-Time Library for the RISC OS port of GCC.
  25.  
  26. Quoting the original documentation :
  27.  
  28.     [UnixLib] is a complete replacement ANSI compliant C library for use
  29.     with Acorn RISC OS ANSI C Release 3.0/3.1A/3.1B/4.0. It incorporates
  30.     a subset of the UNIX system call interface and some common System V
  31.     and 4.3 BSD C libraries.
  32.  
  33. UnixLib was originaly developed by Huw Rogers, up to version 3.6c, after
  34. which Simon Callan took over development. This was mainly triggered by
  35. his work on the port of GCC 2.4.5 to RISC OS. Nick Burrett and Peter
  36. Burwood did a lot of the development work starting at version 3.7b and
  37. working towards 3.8 for their ports of GCC 2.7 and GNAT 3.03 respectively.
  38. Additional help along the way has been provided by Nick Clark and
  39. John Tytgat. Peter Naulls and Alex Waugh contributed significantly to
  40. create 4.0 which features 32-bit compliancy and pthread support.
  41.  
  42. UnixLib is covered with various licenses but freely usable for
  43. non-commercial programs. For commercial use, and usage of parts of the
  44. source code, please contact the UnixLib developers. In most cases there
  45. will be no charges or restrictions. 
  46.  
  47.  
  48. Installation
  49. ~~~~~~~~~~~~
  50.  
  51. Installation is quite simple:
  52.  
  53. 1) Copy the !UnixLib directory to an appropriate location on your hard disc,
  54. and ensure that !UnixLib.!Boot is run.  Running !UnixLib.!Boot is normally
  55. done by the Filer when seeing the !UnixLib directory for the first time.
  56.  
  57. 2) If you develop on RISC OS earlier than 3.7, make sure you have the
  58. CallASWI module installed in your !System directory.  The latest known
  59. version is 0.03 and can be found at
  60. <URL:http://www.iyonix.com/32bit/CallASWI.shtml>.
  61.  
  62. 3) The module "SharedUnixLibrary" needs to be copied as
  63. !System.310.Modules.SharedULib.  In !UnixLib you can find the sources of
  64. this module.
  65.  
  66.  
  67. Distributing of UnixLib based programs
  68. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  69.  
  70. When your program is linked with UnixLib, it needs the "SharedUnixLibrary"
  71. module.  We advise to ship together with your product the following
  72. directory tree !System.310.Modules containing a copy of the
  73. "SharedUnixLibrary" module as file "SharedULib".  Users can use the
  74. !System merger to make sure they have the latest version of this module.
  75.  
  76. If you intend your program to run on versions of RISC OS older than 3.7,
  77. you should also provide an installation note or program to install the
  78. CallASWI module as !System.Modules.CallASWI.  Or, even better, redirect
  79. the users to <URL:http://www.iyonix.com/32bit/CallASWI.shtml> for the
  80. latest known version and approved installation program.
  81.  
  82.  
  83. UnixLib and GCC
  84. ~~~~~~~~~~~~~~~
  85.  
  86. UnixLib is the default library for GCC, and there are no actions that need
  87. to be taken to use this combination.
  88.  
  89.  
  90. UnixLib and Norcroft C
  91. ~~~~~~~~~~~~~~~~~~~~~~
  92.  
  93. By default Norcroft C uses the ANSI library that come with the compiler. To
  94. use UnixLib, you have to change its behaviour, by using the following
  95. command switches
  96.  
  97.         -IUnixLib: -JUnixLib: -lUnixLib:o.UnixLib
  98.  
  99. If you are using a seperate link stage, the -l switch is not needed, instead
  100. you should specifiy 'UnixLib:o.UnixLib' in the link command line.
  101.  
  102. If using the DDE frontend '!CC', the following needs to be changed
  103.  
  104. The 'Include' field should be changed to 'UnixLib:'
  105. On the popup menu, the 'Default path' should be set to 'UnixLib:', while the
  106. 'libraries' should be set to 'UnixLib:o.UnixLib'.
  107.  
  108. For !Link, 'UnixLib:o.UnixLib' should be specified as one of the files
  109. to be linked.
  110.  
  111. Please note that the math functions defined in complex.h cannot be
  112. used if UnixLib is compiled with Norcroft C.
  113.  
  114. -EOF-
  115.