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 >
Wrap
Text File
|
1995-01-06
|
4KB
|
101 lines
This is complete port of GNU GCC version 2.6.1 it includes the
C, Objective-C, and C++ compilers, along with the libg++ library
and the Objective-C library, the man documentation and the online
texinfo manuals for emacs.
The compilers appear to be pretty stable I've only found two C files
that caused any problems (and that was with optimization turned on
and compilation of a couple of large functions from the gdb-413
distribution). No problems have been found with the C++ compiler
and the ObjectiveC compiler has compiled its class library and
passed the supplied checks (except for the socket and server tests
as I haven't got MintNet running yet.)
In C++ the CursesW class is unimplemented because I don't have a
cplusplus aware curses.h file. The source is included in gcc161a.zoo.
Testing has only been done under MiNT1.10 and you will need to be
using a minix filesystem, or something that allows proper filenames.
This distribution is contained in 3 zoo files:
gcc261a.zoo - contains the documentation files, gcc.ttp
g++.ttp, cpp.ttp, the header files, the
pseudo-prototype libraries and some additional
support code for the gnu.olb library.
gen/* -- psuedo prototype files
g++-include/* -- g++ specific header files
man/* -- nroff manual files
cat/* -- nroff formated manual files
bin/* -- compiler interface programs
info/* -- emacs online info files
include/objc/* -- objectiveC runtime header files
genclass.sh -- shell script for /bin/sh
genclass.tcsh -- shell script for tcsh
gcc-lib/cpp.ttp -- preprocessor program
gcc_lib/op_vnew.c -- new support functions
Disk requirements 3215425
gcc261b.zoo - contains the C and C++ compilers.
gcc-lib/cc1.ttp -- C compiler proper.
gcc-lib/cc1plus.ttp -- C++ compiler proper
Disk requirements 2595304
gcc261c.zoo - contains the Objective-C compiler and libraries.
objects/* -- ObjectiveC class header files
gcc-lib/cc1obj.ttp -- ObjectiveC compiler
gcc-lib/objc.olb -- ObjectiveC runtime library
gcc-lib/objects.olb -- ObjectiveC class library
gcc-lib/g++.olb -- C++ class library
Disk requirements 2581090
Setting Things Up
-----------------
The control programs gcc.ttp and g++.ttp can go anywhere in your
PATH, the compilers cc1.ttp, cc1obj.ttp, and cc1plus.ttp like to
be in /usr/local/lib/gcc-lib, but you can use GCC_EXEC_PREFIX to
change that. The cplusplus header files like to live in
/usr/local/lib/g++-include, your C header files in
/usr/local/lib/gcc-lib/include, the Objective-C runtime headers
in /usr/local/lib/gcc-lib/include/objc, and the Objective-C in
/usr/local/lib/gcc-lib/include/objects. Actually the preprocessor
will look in a range of places for the headers (use the -v option
to discover exactly where and the order of search). In addition you
can still use the GNUINC and GXXINC environment variables, however
the preferred environment variables are C_INCLUDE_PATH, CPLUS_INCLUDE_PATH,
OBJC_INCLUDE_PATH, and OBJCPLUS_INCLUDE_PATH, for headers that can be used
by either Objective-C or C++. Use the Unix type path seperator ':' the
atari seperators ';' and ',' will probably still work though.
Notes on this port.
-------------------
I've changed the way in which the linker is called, it is no longer
necessary to specify -lgem, as this is parameter is always passed to
the linker, as the penultimate parameter before -lgnu, with g++ you
get -lg++ -lgem -lgnu. I've done this because I tend to use gem.olb
most of the time and normally forget to specify it when compiling
directly from the command line.
The g++ library has been compiled to use its own form of stdio.h which
should be kept seperate from the stdio.h that comes with mintlibs. You
should, however, be able to intermix C++ stream output with stdio output
without trouble.
GCC 2.6 uses two new builtin functions for allocating and deleting arrays
these two functions are in op_vnew.c, which should be compiled and added
to gnu.olb or mint.olb. You will find this file in gcc261a.zoo
Queries to ljp@cov.ac.uk