home *** CD-ROM | disk | FTP | other *** search
/ Computer Club Elmshorn Atari PD / CCE_PD.iso / pc / 0900 / CCE_0991.ZIP / CCE_0991 / GCC261.TXT next >
Text File  |  1995-01-06  |  4KB  |  101 lines

  1.  
  2. This is complete port of GNU GCC version 2.6.1 it includes the
  3. C, Objective-C, and C++ compilers, along with the libg++ library
  4. and the Objective-C library, the man documentation and the online
  5. texinfo manuals for emacs.
  6.  
  7. The compilers appear to be pretty stable I've only found two C files
  8. that caused any problems (and that was with optimization turned on
  9. and compilation of a couple of large functions from the gdb-413
  10. distribution). No problems have been found with the C++ compiler
  11. and the ObjectiveC compiler has compiled its class library and
  12. passed the supplied checks (except for the socket and server tests
  13. as I haven't got MintNet running yet.)
  14.  
  15. In C++ the CursesW class is unimplemented because I don't have a
  16. cplusplus aware curses.h file. The source is included in gcc161a.zoo.
  17.  
  18.  
  19. Testing has only been done under MiNT1.10 and you will need to be
  20. using a minix filesystem, or something that allows proper filenames.
  21.  
  22. This distribution is contained in 3 zoo files:
  23.  
  24.     gcc261a.zoo - contains the documentation files, gcc.ttp
  25.               g++.ttp, cpp.ttp, the header files, the
  26.               pseudo-prototype libraries and some additional
  27.                       support code for the gnu.olb library.
  28.  
  29.             gen/*             -- psuedo prototype files
  30.             g++-include/*     -- g++ specific header files
  31.             man/*             -- nroff manual files
  32.             cat/*             -- nroff formated manual files
  33.             bin/*             -- compiler interface programs
  34.             info/*          -- emacs online info files
  35.             include/objc/*    -- objectiveC runtime header files
  36.             genclass.sh       -- shell script for /bin/sh
  37.             genclass.tcsh     -- shell script for tcsh
  38.             gcc-lib/cpp.ttp   -- preprocessor program
  39.             gcc_lib/op_vnew.c -- new support functions
  40.  
  41.         Disk requirements 3215425
  42.  
  43.     gcc261b.zoo - contains the C and C++ compilers.
  44.  
  45.             gcc-lib/cc1.ttp     -- C compiler proper.
  46.             gcc-lib/cc1plus.ttp -- C++ compiler proper
  47.  
  48.         Disk requirements 2595304
  49.  
  50.     gcc261c.zoo - contains the Objective-C compiler and libraries.
  51.  
  52.             objects/*           -- ObjectiveC class header files
  53.             gcc-lib/cc1obj.ttp  -- ObjectiveC compiler
  54.             gcc-lib/objc.olb    -- ObjectiveC runtime library
  55.             gcc-lib/objects.olb -- ObjectiveC class library
  56.             gcc-lib/g++.olb     -- C++ class library
  57.  
  58.         Disk requirements 2581090
  59.  
  60.  
  61. Setting Things Up
  62. -----------------
  63. The control programs gcc.ttp and g++.ttp can go anywhere in your
  64. PATH, the compilers cc1.ttp, cc1obj.ttp, and cc1plus.ttp like to
  65. be in /usr/local/lib/gcc-lib, but you can use GCC_EXEC_PREFIX to
  66. change that. The cplusplus header files like to live in
  67. /usr/local/lib/g++-include, your C header files in
  68. /usr/local/lib/gcc-lib/include, the Objective-C runtime headers
  69. in /usr/local/lib/gcc-lib/include/objc, and the Objective-C in
  70. /usr/local/lib/gcc-lib/include/objects. Actually the preprocessor
  71. will look in a range of places for the headers (use the -v option
  72. to discover exactly where and the order of search). In addition you
  73. can still use the GNUINC and GXXINC environment variables, however
  74. the preferred environment variables are C_INCLUDE_PATH, CPLUS_INCLUDE_PATH,
  75. OBJC_INCLUDE_PATH, and OBJCPLUS_INCLUDE_PATH, for headers that can be used
  76. by either Objective-C or C++. Use the Unix type path seperator ':' the
  77. atari seperators ';' and ',' will probably still work though.
  78.  
  79.  
  80. Notes on this port.
  81. -------------------
  82.  
  83. I've changed the way in which the linker is called, it is no longer
  84. necessary to specify -lgem, as this is parameter is always passed to
  85. the linker, as the penultimate parameter before -lgnu, with g++ you
  86. get -lg++ -lgem -lgnu. I've done this because I tend to use gem.olb
  87. most of the time and normally forget to specify it when compiling
  88. directly from the command line.
  89.  
  90. The g++ library has been compiled to use its own form of stdio.h which
  91. should be kept seperate from the stdio.h that comes with mintlibs. You
  92. should, however, be able to intermix C++ stream output with stdio output
  93. without trouble.
  94.  
  95. GCC 2.6 uses two new builtin functions for allocating and deleting arrays
  96. these two functions are in op_vnew.c, which should be compiled and added
  97. to gnu.olb or mint.olb. You will find this file in gcc261a.zoo
  98.  
  99.  
  100. Queries to ljp@cov.ac.uk
  101.