Mail Archives: djgpp/2003/03/11/12:51:19
This is an announcement of DJGPP port of gcc-3.2.2
GCC used to stand for the GNU C Compiler, but since the compiler
supports several other languages aside from C, it now stands for
the GNU Compiler Collection.
See http://gcc.gnu.org/gcc-3.2/ for more detailed information
about new features and other changes in gcc-3.2.2
Currently C, C++, Fortran and Objective C compilers are supported
for DJGPP. Java compiler is not ported and are not included. Ada compiler
(as it itself is written in Ada) is able to bootstrap itself, but this is
practically only test I have done.
=====================================================================
NOTE: Currently DWARF2 debugging info is the default (when
You specify GCC command line option -g or -g3, ...).
DWARF2 debugging info was already available for DJGPP since GCC-3.0,
but was not the default. As result You need also new version of GDB
for debugging: gdb521b.zip (or newer when available) from DJGPP
distribution or recent build of RHIDE (either rhide15b.zip from DJGPP
distribution or latest builds from http://rhide.sorceforge.net/snapshots.
One can still use COFF (GCC command line option -gcoff) and stabs
(command line options -gstabs, -gstabs+) for debugging.
Also symify.exe from djdev203.zip works with COFF debugging info only.
You need bfdsymify.exe instead (from gdb53b.zip) when DWARF2 or stabs
debuging info is being used
=====================================================================
Archives are available from DJGPP distribution in Simtelnet
(and mirror sites) in directory v2gnu:
There are 7 archives:
gcc322.README - readme file from DJGPP port of GCC-3.2.2. It's
in separate file to avoid need to download large archives
to get this file.
gcc322s.zip - sources of gcc-3.2.2. I put all sources in a single
archive. This file is only needed if You're want to
rebuild gcc-3.2.2 from sources.
gcc322b.zip - binaries of C compiler
gpp322b.zip - binaries of C++ compiler (needs gcc322b.zip)
g77322b.zip - binaries of Fortran compiler (needs gcc322b.zip)
objc322b.zip - binaries of Objective C compiler (needs gcc322b.zip)
gcc322s2.zip - shell script and patches for original gcc-3.2.2.
I used them to generate gcc-3.2.2 sources for DJGPP
(gcc322s.zip).
ada322b.zip - binaries of Ada compiler (warning: practically untested)
Files user need:
Programming languages Needed files
C gcc322b.zip
C++ gcc322b.zip, gpp322b.zip
Fortran gcc322b.zip, g77322b.zip
Objective-C gcc322b.zip, objc322b.zip
Ada ada322b.zip, gcc322b.zip
NOTE: gcc32b.zip contains file cxxfilt.exe and there is file with same
name in binutils (for example bnu213b.zip). You can safely
overwrite the old one.
For more information about this port see archive
gnu/gcc-3.22/readme.DJGPP
after unpacking either gcc322b.zip or gcc322s.zip or get file
gcc322.README from directory v2gnu in DJGPP distribution
Also please DON'T mix C++ libraries (or object files) built with
different compiler versions. C++ sources should be recompiled (seems
that there is no need to do this for C sources). Object files generated
by GCC-3.2.2 from C++ sources are incompatible with object files (or
libraries) generated from C++ sources by any earlier GCC version.
So all C++ sources must be recompiled after upgrade to GCC-3.2.2.
System requirements
===================
Latest update (timestamp 11 August 2002) of DJGPP-2.03 or above when
available. Please verify whether You have a newest one.
binutils-2.13 or above. It's no more possible to use binutils-2.8.1
or 2.9.1. Command line option -mno-bnu210 is no more supported.
Perhaps binutils-2.11.2 or 2.12 could also be used but are not
tested
Some warning for users of C++. C++ compiler in gcc-3.2.2 does more strict
syntax checking than gcc and egcs versions older than gcc-3.1. As result
errors are generated in many places where earlier one got warnings.
Note for users of C++ IO classes fstream, ifstream, ofstream
============================================================
There is a regression against GCC versions 2.95.3 and
earlier: Member functions tellp(), tellg(), seekp() and seekg()
are broken when stream is opened not in binary mode. If You are going
to use any similar functions You should open stream in binary mode.
Don't ask me when it will be fixed as I don't know that. I'm also
not sure I'll spend much time trying to fix that.
Send suggestions and bug reports concerning the DJGPP port of GCC to
comp.os.msdos.djgpp or <djgpp AT delorie DOT com>.
Happy hacking
Andris Pavenis <pavenis AT lanet DOT lv>
- Raw text -