[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GDB 5.3 released!

From: Andrew Cagney
Subject: GDB 5.3 released!
Date: Mon, 16 Dec 2002 12:09:42 -0500 (EST)

                        GDB 5.3 released!

Version 5.3 of GDB, the GNU Debugger, is now available via anonymous
FTP.  GDB is a source-level debugger for C, C++, Pascal and many other
languages.  GDB can target (i.e. debug programs running on) dozens of
different processor architectures, and GDB itself can run on most
popular Unix and Microsoft Windows variants.

You can download GDB from Project GNU's FTP server in the directory:

The previous version, 5.2.1, was released roughly 5 months ago; and in
that time several new features have been added and many bugs have been
fixed.  The details are below.  In addition, a number of late breaking
problems have been identified and they are also mentioned below.

The vital stats: 

-rw-r--r--    1 cagney   cagney   14707600 Dec 12 00:06 gdb-5.3.tar.gz

The md5sum checksum:

1e8566325f222edfbdd93e40c6ae921b  gdb-5.3.tar.gz

There is a web page for GDB at:

That page includes information about GDB mailing lists (an
announcement mailing list, developers discussion lists, etc.), details
on how to access GDB's CVS repository, locations for development
snapshots, preformatted documentation, and links to related
information around the net.  We will put errata notes and
host-specific tips for this release on-line as any problems come up.
All mailing lists archives are also browsable via the web.

Many people have contributed to this release.  Thanks to everybody for
the help!

Keep those fixes and improvements coming in! (Send them to

       Andrew Cagney
       on behalf of the GDB Developers.

*** Changes in GDB 5.3:

* GNU/Linux shared library multi-threaded performance improved.

When debugging a multi-threaded application on GNU/Linux, GDB now uses
`/proc', in preference to `ptrace' for memory reads.  This may result
in an improvement in the start-up time of multi-threaded, shared
library applications when run under GDB.  One GDB user writes: ``loads
shared libs like mad''.

* ``gdbserver'' now supports multi-threaded applications on some targets

Support for debugging multi-threaded applications which use  
the GNU/Linux LinuxThreads package has been added for
arm*-*-linux*-gnu*, i[3456]86-*-linux*-gnu*, mips*-*-linux*-gnu*,
powerpc*-*-linux*-gnu*, and sh*-*-linux*-gnu*.

* GDB now supports C/C++ preprocessor macros.

GDB now expands preprocessor macro invocations in C/C++ expressions,
and provides various commands for showing macro definitions and how
they expand.

The new command `macro expand EXPRESSION' expands any macro
invocations in expression, and shows the result.

The new command `show macro MACRO-NAME' shows the definition of the
macro named MACRO-NAME, and where it was defined.

Most compilers don't include information about macros in the debugging
information by default.  In GCC 3.1, for example, you need to compile
your program with the options `-gdwarf-2 -g3'.  If the macro
information is present in the executable, GDB will read it.

* Multi-arched targets.

DEC Alpha (partial)                             alpha*-*-*
DEC VAX (partial)                               vax-*-*
NEC V850                                        v850-*-*
National Semiconductor NS32000 (partial)        ns32k-*-*
Motorola 68000 (partial)                        m68k-*-*
Motorola MCORE                                  mcore-*-*

* New targets.

Fujitsu FRV architecture added by Red Hat       frv*-*-*

* New native configurations

Alpha NetBSD                                    alpha*-*-netbsd*
SH NetBSD                                       sh*-*-netbsdelf*
MIPS NetBSD                                     mips*-*-netbsd*
UltraSPARC NetBSD                               sparc64-*-netbsd*

* OBSOLETE configurations and files

Configurations that have been declared obsolete in this release have
been commented out.  Unless there is activity to revive these
configurations, the next release of GDB will have their sources
permanently REMOVED.

Mitsubishi D30V                                 d30v-*-*
OS/9000                                         i[34]86-*-os9k
IBM AIX PS/2                                    i[3456]86-*-aix
Fujitsu FR30                                    fr30-*-elf*
Motorola Delta 88000 running Sys V              m88k-motorola-sysv  or  delta88
Argonaut Risc Chip (ARC)                        arc-*-*
i386 running Mach 3.0                           i[3456]86-*-mach3*
i386 running Mach                               i[3456]86-*-mach*
i386 running OSF/1                              i[3456]86-*osf1mk*
HP/Apollo 68k Family                            m68*-apollo*-sysv*,
                                                m68*-hp-bsd*, m68*-hp-hpux*
I960 with MON960                                i960-*-coff

* OBSOLETE languages

CHILL, a Pascal like language used by telecommunications companies.

* REMOVED configurations and files

AMD 29k family via UDI                          a29k-amd-udi, udi29k
A29K VxWorks                                    a29k-*-vxworks
AMD 29000 embedded, using EBMON                 a29k-none-none
AMD 29000 embedded with COFF                    a29k-none-coff
AMD 29000 embedded with a.out                   a29k-none-aout

testsuite/gdb.hp/gdb.threads-hp/                directory

* New command "set max-user-call-depth <nnn>"

This command allows the user to limit the call depth of user-defined
commands.  The default is 1024.

* Changes in FreeBSD/i386 native debugging.

Support for the "generate-core-file" has been added.

* New commands "dump", "append", and "restore".

These commands allow data to be copied from target memory
to a bfd-format or binary file (dump and append), and back
from a file into memory (restore).

* Improved "next/step" support on multi-processor Alpha Tru64.

The previous single-step mechanism could cause unpredictable problems,
including the random appearance of SIGSEGV or SIGTRAP signals. The use
of a software single-step mechanism prevents this.

                        Known problems in GDB 5.3

                See also:


Due to a kernel bug (kern/35175), detaching from an attached process
will very likely cause the process to be stop or die with a Trace/BPT


There is a bug (bin/41671) in FreeBSD's gcc that causes it to emit bad
debug information when using the stabs format (which is the default).
As a result GDB tends to place breakpoints on functions before the
function prologue, and information about function parameters and local
variables is lost.  In earlier versions of GDB the effects were rather
limited, but starting with GDB 5.3 the influence is much more
prominent.  As a workaround, compile your code with -gdwarf-2.


gdb/487: The top level make files used to build GDB are not compatible
with HP/UX make.  As a workaround, use GNU make.

gdb/486: The HP/UX C compiler defaults to K&R mode but GDB only builds
with an ISO C compiler.  The top level configuration incorrectly sets
CC to `cc' instead of `cc -Ae'.  As a workaround, the correct compiler
can be specified as part of the configuration vis:

    $  'CC=cc -Ae' ./configure


gdb/455: GDB doesn't build on a FreeBSD 4.4-STABLE system.  The
problem is still being investigated.


gdb/816: When building GDB with GCC 3.0.1, GDB is unable to load a core
file properly. It generates several errors and warnings regarding
unhandled core file section types, incorrect endianness, the failure to
load the registers. Are also incorrectly reported: The program name, the
cause of the program death, and the call stack at the moment of the
death. This problem has been reported on alpha-osf4.0f and alpha-osf5.1a.
To work-around the problem, add -D__digital__ to the CFLAGS when
building GDB vis:

    $ make CFLAGS='-O2 -D__digital__'

reply via email to

[Prev in Thread] Current Thread [Next in Thread]