|
|
|
@ -1,10 +1,10 @@ |
|
|
|
README for gdb-5.0 release |
|
|
|
Updated 11 May 2000 by Andrew Cagney |
|
|
|
README for gdb-5.1 release |
|
|
|
Updated 20 October 2001 by Andrew Cagney |
|
|
|
|
|
|
|
This is GDB, the GNU source-level debugger. |
|
|
|
A summary of new features is in the file `NEWS'. |
|
|
|
|
|
|
|
See the GDB home page at http://sourceware.cygnus.com/gdb/ for up to |
|
|
|
See the GDB home page at http://www.gnu.org/software/gdb/ for up to |
|
|
|
date release information, mailing list links and archives, etc. |
|
|
|
|
|
|
|
|
|
|
|
@ -14,33 +14,34 @@ Unpacking and Installation -- quick overview |
|
|
|
In this release, the GDB debugger sources, the generic GNU include |
|
|
|
files, the BFD ("binary file description") library, the readline |
|
|
|
library, and other libraries all have directories of their own |
|
|
|
underneath the gdb-5.0 directory. The idea is that a variety of GNU |
|
|
|
underneath the gdb-5.1 directory. The idea is that a variety of GNU |
|
|
|
tools can share a common copy of these things. Be aware of variation |
|
|
|
over time--for example don't try to build gdb with a copy of bfd from |
|
|
|
a release other than the gdb release (such as a binutils or gas |
|
|
|
release), especially if the releases are more than a few weeks apart. |
|
|
|
a release other than the gdb release (such as a binutils release), |
|
|
|
especially if the releases are more than a few weeks apart. |
|
|
|
Configuration scripts and makefiles exist to cruise up and down this |
|
|
|
directory tree and automatically build all the pieces in the right |
|
|
|
order. |
|
|
|
|
|
|
|
When you unpack the gdb-5.0.tar.gz file, you'll find a directory |
|
|
|
called `gdb-5.0', which contains: |
|
|
|
When you unpack the gdb-5.1.tar.gz file, you'll find a directory |
|
|
|
called `gdb-5.1', which contains: |
|
|
|
|
|
|
|
COPYING config.if install-sh mmalloc readline |
|
|
|
COPYING.LIB config.sub intl move-if-change sim |
|
|
|
Makefile.in configure libiberty mpw-README symlink-tree |
|
|
|
README configure.in ltconfig mpw-build.in texinfo |
|
|
|
bfd djunpack.bat ltmain.sh mpw-config.in utils |
|
|
|
config etc md5.sum mpw-configure ylwrap |
|
|
|
config-ml.in gdb missing mpw-install |
|
|
|
config.guess include mkinstalldirs opcodes |
|
|
|
COPYING config.sub intl missing opcodes |
|
|
|
COPYING.LIB configure libiberty mkinstalldirs readline |
|
|
|
Makefile.in configure.in libtool.m4 mmalloc sim |
|
|
|
README djunpack.bat ltcf-c.sh move-if-change symlink-tree |
|
|
|
bfd etc ltcf-cxx.sh mpw-README texinfo |
|
|
|
config gdb ltcf-gcj.sh mpw-build.in utils |
|
|
|
config-ml.in gettext.m4 ltconfig mpw-config.in ylwrap |
|
|
|
config.guess include ltmain.sh mpw-configure |
|
|
|
config.if install-sh md5.sum mpw-install |
|
|
|
|
|
|
|
You can build GDB right in the source directory: |
|
|
|
|
|
|
|
cd gdb-5.0 |
|
|
|
./configure |
|
|
|
make |
|
|
|
cp gdb/gdb /usr/local/bin/gdb (or wherever you want) |
|
|
|
cd gdb-5.1 |
|
|
|
./configure |
|
|
|
make |
|
|
|
cp gdb/gdb /usr/local/bin/gdb (or wherever you want) |
|
|
|
|
|
|
|
However, we recommend that an empty directory be used instead. |
|
|
|
This way you do not clutter your source tree with binary files |
|
|
|
@ -49,14 +50,14 @@ configuration options. |
|
|
|
|
|
|
|
You can build GDB in any empty build directory: |
|
|
|
|
|
|
|
|
|
|
|
mkdir build |
|
|
|
cd build |
|
|
|
<full path to your sources>/gdb-5.0/configure |
|
|
|
make |
|
|
|
mkdir build |
|
|
|
cd build |
|
|
|
<full path to your sources>/gdb-5.1/configure |
|
|
|
make |
|
|
|
cp gdb/gdb /usr/local/bin/gdb (or wherever you want) |
|
|
|
|
|
|
|
(Building GDB with DJGPP tools for MS-DOS/MS-Windows is slightly |
|
|
|
different; see the file gdb-5.0/gdb/config/djgpp/README for details.) |
|
|
|
different; see the file gdb-5.1/gdb/config/djgpp/README for details.) |
|
|
|
|
|
|
|
This will configure and build all the libraries as well as GDB. If |
|
|
|
`configure' can't determine your system type, specify one as its |
|
|
|
@ -65,10 +66,10 @@ argument, e.g., `./configure sun4' or `./configure decstation'. |
|
|
|
If you get compiler errors during this stage, see the `Reporting |
|
|
|
Bugs' section below; there are a few known problems. |
|
|
|
|
|
|
|
GDB requires an ISO-C (ANSI C) compiler. If you do not have an |
|
|
|
ISO-C compiler for your system, you may be able to download and |
|
|
|
install the GNU CC compiler. It is available via anonymous FTP from |
|
|
|
the directory `ftp://ftp.gnu.org/pub/gnu/gcc'. |
|
|
|
GDB requires an ISO C (ANSI C) compiler. If you do not have an ISO |
|
|
|
C compiler for your system, you may be able to download and install |
|
|
|
the GNU CC compiler. It is available via anonymous FTP from the |
|
|
|
directory `ftp://ftp.gnu.org/pub/gnu/gcc'. |
|
|
|
|
|
|
|
GDB can be used as a cross-debugger, running on a machine of one |
|
|
|
type while debugging a program running on a machine of another type. |
|
|
|
@ -87,7 +88,7 @@ documentation and TeX (or `texi2roff') to typeset the printed version. |
|
|
|
|
|
|
|
GDB includes an already formatted copy of the on-line Info version |
|
|
|
of this manual in the `gdb/doc' subdirectory. The main Info file is |
|
|
|
`gdb-5.0/gdb/doc/gdb.info', and it refers to subordinate files |
|
|
|
`gdb-5.1/gdb/doc/gdb.info', and it refers to subordinate files |
|
|
|
matching `gdb.info*' in the same directory. If necessary, you can |
|
|
|
print out these files, or read them with any editor; but they are |
|
|
|
easier to read using the `info' subsystem in GNU Emacs or the |
|
|
|
@ -99,16 +100,16 @@ Info formatting programs, such as `texinfo-format-buffer' or |
|
|
|
`makeinfo'. |
|
|
|
|
|
|
|
If you have `makeinfo' installed, and are in the top level GDB |
|
|
|
source directory (`gdb-5.0', in the case of version 5.0), you can make |
|
|
|
source directory (`gdb-5.1', in the case of version 5.1), you can make |
|
|
|
the Info file by typing: |
|
|
|
|
|
|
|
cd gdb/doc |
|
|
|
make info |
|
|
|
cd gdb/doc |
|
|
|
make info |
|
|
|
|
|
|
|
If you want to typeset and print copies of this manual, you need |
|
|
|
TeX, a program to print its DVI output files, and `texinfo.tex', the |
|
|
|
Texinfo definitions file. This file is included in the GDB |
|
|
|
distribution, in the directory `gdb-5.0/texinfo'. |
|
|
|
distribution, in the directory `gdb-5.1/texinfo'. |
|
|
|
|
|
|
|
TeX is a typesetting program; it does not print files directly, but |
|
|
|
produces output files called DVI files. To print a typeset document, |
|
|
|
@ -122,18 +123,18 @@ without any extension or a `.dvi' extension. |
|
|
|
This file tells TeX how to typeset a document written in Texinfo |
|
|
|
format. On its own, TeX cannot read, much less typeset a Texinfo file. |
|
|
|
`texinfo.tex' is distributed with GDB and is located in the |
|
|
|
`gdb-5.0/texinfo' directory. |
|
|
|
`gdb-5.1/texinfo' directory. |
|
|
|
|
|
|
|
If you have TeX and a DVI printer program installed, you can typeset |
|
|
|
and print this manual. First switch to the the `gdb' subdirectory of |
|
|
|
the main source directory (for example, to `gdb-5.0/gdb') and then type: |
|
|
|
the main source directory (for example, to `gdb-5.1/gdb') and then type: |
|
|
|
|
|
|
|
make doc/gdb.dvi |
|
|
|
make doc/gdb.dvi |
|
|
|
|
|
|
|
If you prefer to have the manual in PDF format, type this from the |
|
|
|
`gdb/doc' subdirectory of the main source directory: |
|
|
|
|
|
|
|
make gdb.pdf |
|
|
|
make gdb.pdf |
|
|
|
|
|
|
|
For this to work, you will need the PDFTeX package to be installed. |
|
|
|
|
|
|
|
@ -149,55 +150,55 @@ preparing GDB for installation; you can then use `make' to build the |
|
|
|
a single directory, whose name is usually composed by appending the |
|
|
|
version number to `gdb'. |
|
|
|
|
|
|
|
For example, the GDB version 5.0 distribution is in the `gdb-5.0' |
|
|
|
For example, the GDB version 5.1 distribution is in the `gdb-5.1' |
|
|
|
directory. That directory contains: |
|
|
|
|
|
|
|
`gdb-5.0/{COPYING,COPYING.LIB}' |
|
|
|
`gdb-5.1/{COPYING,COPYING.LIB}' |
|
|
|
Standard GNU license files. Please read them. |
|
|
|
|
|
|
|
`gdb-5.0/bfd' |
|
|
|
`gdb-5.1/bfd' |
|
|
|
source for the Binary File Descriptor library |
|
|
|
|
|
|
|
`gdb-5.0/config*' |
|
|
|
`gdb-5.1/config*' |
|
|
|
script for configuring GDB, along with other support files |
|
|
|
|
|
|
|
`gdb-5.0/gdb' |
|
|
|
`gdb-5.1/gdb' |
|
|
|
the source specific to GDB itself |
|
|
|
|
|
|
|
`gdb-5.0/include' |
|
|
|
`gdb-5.1/include' |
|
|
|
GNU include files |
|
|
|
|
|
|
|
`gdb-5.0/libiberty' |
|
|
|
`gdb-5.1/libiberty' |
|
|
|
source for the `-liberty' free software library |
|
|
|
|
|
|
|
`gdb-5.0/mmalloc' |
|
|
|
`gdb-5.1/mmalloc' |
|
|
|
source for the GNU memory-mapped malloc package |
|
|
|
|
|
|
|
`gdb-5.0/opcodes' |
|
|
|
`gdb-5.1/opcodes' |
|
|
|
source for the library of opcode tables and disassemblers |
|
|
|
|
|
|
|
`gdb-5.0/readline' |
|
|
|
`gdb-5.1/readline' |
|
|
|
source for the GNU command-line interface |
|
|
|
NOTE: The readline library is compiled for use by GDB, but will |
|
|
|
not be installed on your system when "make install" is issued. |
|
|
|
|
|
|
|
`gdb-5.0/sim' |
|
|
|
`gdb-5.1/sim' |
|
|
|
source for some simulators (ARM, D10V, SPARC, M32R, MIPS, PPC, V850, etc) |
|
|
|
|
|
|
|
`gdb-5.0/intl' |
|
|
|
`gdb-5.1/intl' |
|
|
|
source for the GNU gettext library, for internationalization. |
|
|
|
This is slightly modified from the standalone gettext |
|
|
|
distribution you can get from GNU. |
|
|
|
|
|
|
|
`gdb-5.0/texinfo' |
|
|
|
`gdb-5.1/texinfo' |
|
|
|
The `texinfo.tex' file, which you need in order to make a printed |
|
|
|
manual using TeX. |
|
|
|
|
|
|
|
`gdb-5.0/etc' |
|
|
|
`gdb-5.1/etc' |
|
|
|
Coding standards, useful files for editing GDB, and other |
|
|
|
miscellanea. |
|
|
|
|
|
|
|
`gdb-5.0/utils' |
|
|
|
`gdb-5.1/utils' |
|
|
|
A grab bag of random utilities. |
|
|
|
|
|
|
|
Note: the following instructions are for building GDB on Unix or |
|
|
|
@ -206,16 +207,16 @@ MS-DOS/MS-Windows are in the file gdb/config/djgpp/README. |
|
|
|
|
|
|
|
The simplest way to configure and build GDB is to run `configure' |
|
|
|
from the `gdb-VERSION-NUMBER' source directory, which in this example |
|
|
|
is the `gdb-5.0' directory. |
|
|
|
is the `gdb-5.1' directory. |
|
|
|
|
|
|
|
First switch to the `gdb-VERSION-NUMBER' source directory if you are |
|
|
|
not already in it; then run `configure'. |
|
|
|
|
|
|
|
For example: |
|
|
|
|
|
|
|
cd gdb-5.0 |
|
|
|
./configure |
|
|
|
make |
|
|
|
cd gdb-5.1 |
|
|
|
./configure |
|
|
|
make |
|
|
|
|
|
|
|
Running `configure' followed by `make' builds the `bfd', |
|
|
|
`readline', `mmalloc', and `libiberty' libraries, then `gdb' itself. |
|
|
|
@ -226,11 +227,11 @@ corresponding source directories. |
|
|
|
does not recognize this automatically when you run a different shell, |
|
|
|
you may need to run `sh' on it explicitly: |
|
|
|
|
|
|
|
sh configure |
|
|
|
sh configure |
|
|
|
|
|
|
|
If you run `configure' from a directory that contains source |
|
|
|
directories for multiple libraries or programs, such as the `gdb-5.0' |
|
|
|
source directory for version 5.0, `configure' creates configuration |
|
|
|
directories for multiple libraries or programs, such as the `gdb-5.1' |
|
|
|
source directory for version 5.1, `configure' creates configuration |
|
|
|
files for every directory level underneath (unless you tell it not to, |
|
|
|
with the `--norecursion' option). |
|
|
|
|
|
|
|
@ -238,11 +239,11 @@ with the `--norecursion' option). |
|
|
|
directories in the GDB distribution, if you only want to configure that |
|
|
|
subdirectory; but be sure to specify a path to it. |
|
|
|
|
|
|
|
For example, with version 5.0, type the following to configure only |
|
|
|
For example, with version 5.1, type the following to configure only |
|
|
|
the `bfd' subdirectory: |
|
|
|
|
|
|
|
cd gdb-5.0/bfd |
|
|
|
../configure |
|
|
|
cd gdb-5.1/bfd |
|
|
|
../configure |
|
|
|
|
|
|
|
You can install `gdb' anywhere; it has no hardwired paths. However, |
|
|
|
you should make sure that the shell on your path (named by the `SHELL' |
|
|
|
@ -270,13 +271,13 @@ directory. If the path to `configure' would be the same as the |
|
|
|
argument to `--srcdir', you can leave out the `--srcdir' option; it |
|
|
|
will be assumed.) |
|
|
|
|
|
|
|
For example, with version 5.0, you can build GDB in a separate |
|
|
|
For example, with version 5.1, you can build GDB in a separate |
|
|
|
directory for a Sun 4 like this: |
|
|
|
|
|
|
|
cd gdb-5.0 |
|
|
|
cd gdb-5.1 |
|
|
|
mkdir ../gdb-sun4 |
|
|
|
cd ../gdb-sun4 |
|
|
|
../gdb-5.0/configure |
|
|
|
../gdb-5.1/configure |
|
|
|
make |
|
|
|
|
|
|
|
When `configure' builds a configuration using a remote source |
|
|
|
@ -297,8 +298,8 @@ called `configure' (or one of its subdirectories). |
|
|
|
|
|
|
|
The `Makefile' that `configure' generates in each source directory |
|
|
|
also runs recursively. If you type `make' in a source directory such |
|
|
|
as `gdb-5.0' (or in a separate configured directory configured with |
|
|
|
`--srcdir=PATH/gdb-5.0'), you will build all the required libraries, |
|
|
|
as `gdb-5.1' (or in a separate configured directory configured with |
|
|
|
`--srcdir=PATH/gdb-5.1'), you will build all the required libraries, |
|
|
|
and then build GDB. |
|
|
|
|
|
|
|
When you have multiple hosts or targets configured in separate |
|
|
|
@ -341,7 +342,7 @@ you can use it to test your guesses on abbreviations--for example: |
|
|
|
Invalid configuration `i786v': machine `i786v' not recognized |
|
|
|
|
|
|
|
`config.sub' is also distributed in the GDB source directory |
|
|
|
(`gdb-5.0', for version 5.0). |
|
|
|
(`gdb-5.1', for version 5.1). |
|
|
|
|
|
|
|
|
|
|
|
`configure' options |
|
|
|
@ -501,7 +502,7 @@ Reporting Bugs |
|
|
|
The correct address for reporting bugs found in gdb is |
|
|
|
"bug-gdb@gnu.org". Please email all bugs, and all requests for help |
|
|
|
with GDB, to that address. Please include the GDB version number |
|
|
|
(e.g., gdb-5.0), and how you configured it (e.g., "sun4" or "mach386 |
|
|
|
(e.g., gdb-5.1), and how you configured it (e.g., "sun4" or "mach386 |
|
|
|
host, i586-intel-synopsys target"). Since GDB now supports so many |
|
|
|
different configurations, it is important that you be precise about |
|
|
|
this. If at all possible, you should include the actual banner that |
|
|
|
@ -557,17 +558,17 @@ ftp://sourceware.cygnus.com/pub/dejagnu/ will contain a recent |
|
|
|
snapshot. Once DejaGNU is installed, you can run the tests in one of |
|
|
|
the following ways: |
|
|
|
|
|
|
|
(1) cd gdb-5.0 |
|
|
|
(1) cd gdb-5.1 |
|
|
|
make check-gdb |
|
|
|
|
|
|
|
or |
|
|
|
|
|
|
|
(2) cd gdb-5.0/gdb |
|
|
|
(2) cd gdb-5.1/gdb |
|
|
|
make check |
|
|
|
|
|
|
|
or |
|
|
|
|
|
|
|
(3) cd gdb-5.0/gdb/testsuite |
|
|
|
(3) cd gdb-5.1/gdb/testsuite |
|
|
|
make site.exp (builds the site specific file) |
|
|
|
runtest -tool gdb GDB=../gdb (or GDB=<somepath> as appropriate) |
|
|
|
|
|
|
|
|