- README for gdb-6.3 release
- Updated 20, November, 2006
+ README for GDB release
This is GDB, the GNU source-level debugger.
Unpacking and Installation -- quick overview
==========================
- In this release, the GDB debugger sources, the generic GNU include
+ The release is provided as a gzipped tar file called
+'gdb-VERSION.tar.gz', where VERSION is the version of GDB.
+
+ 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-6.3 directory. The idea is that a variety of GNU
+underneath the gdb-VERSION 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 release),
+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 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-6.3.tar.gz file, you'll find a directory
-called `gdb-6.3', which contains:
-
- COPYING config-ml.in gettext.m4 ltconfig sim
- COPYING.LIB config.guess include ltmain.sh src-release
- Makefile.def config.sub install-sh md5.sum symlink-tree
- Makefile.in configure libiberty missing texinfo
- Makefile.tpl configure.in libtool.m4 mkinstalldirs ylwrap
- README djunpack.bat ltcf-c.sh move-if-change
- bfd etc ltcf-cxx.sh opcodes
- config gdb ltcf-gcj.sh readline
+ When you unpack the gdb-VERSION.tar.gz file, it will create a
+source directory called `gdb-VERSION'.
You can build GDB right in the source directory:
- cd gdb-6.3
+ cd gdb-VERSION
./configure
make
cp gdb/gdb /usr/local/bin/gdb (or wherever you want)
mkdir build
cd build
- <full path to your sources>/gdb-6.3/configure
+ <full path to your sources>/gdb-VERSION/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-6.3/gdb/config/djgpp/README for details.)
+different; see the file gdb-VERSION/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
argument, e.g., `./configure sun4' or `./configure decstation'.
- Make sure that your 'configure' line ends in 'gdb-6.3/configure':
+ Make sure that your 'configure' line ends in 'gdb-VERSION/configure':
- /berman/migchain/source/gdb-6.3/configure # RIGHT
- /berman/migchain/source/gdb-6.3/gdb/configure # WRONG
+ /berman/migchain/source/gdb-VERSION/configure # RIGHT
+ /berman/migchain/source/gdb-VERSION/gdb/configure # WRONG
- The gdb package contains several subdirectories, such as 'gdb',
+ The GDB package contains several subdirectories, such as 'gdb',
'bfd', and 'readline'. If your 'configure' line ends in
-'gdb-6.3/gdb/configure', then you are configuring only the gdb
-subdirectory, not the whole gdb package. This leads to build errors
+'gdb-VERSION/gdb/configure', then you are configuring only the gdb
+subdirectory, not the whole GDB package. This leads to build errors
such as:
make: *** No rule to make target `../bfd/bfd.h', needed by `gdb.o'. Stop.
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 also requires an ISO
-C standard library. The GDB remote server, gdbserver, builds with some
+C standard library. The GDB remote server, GDBserver, builds with some
non-ISO standard libraries - e.g. for Windows CE.
GDB uses Expat, an XML parsing library, to implement some target-specific
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-6.3/gdb/doc/gdb.info', and it refers to subordinate files
+`gdb-VERSION/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
`makeinfo'.
If you have `makeinfo' installed, and are in the top level GDB
-source directory (`gdb-6.3', in the case of version 6.3), you can make
-the Info file by typing:
+source directory (`gdb-VERSION'), you can make the Info file by
+typing:
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-6.3/texinfo'.
+distribution, in the directory `gdb-VERSION/texinfo'.
TeX is a typesetting program; it does not print files directly, but
produces output files called DVI files. To print a typeset document,
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-6.3/texinfo' directory.
+`gdb-VERSION/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-6.3/gdb') and then type:
+and print this manual. First switch to the `gdb' subdirectory of
+the main source directory (for example, to `gdb-VERSION/gdb') and then type:
make doc/gdb.dvi
`gdb' program.
The GDB distribution includes all the source code you need for GDB in
-a single directory, whose name is usually composed by appending the
-version number to `gdb'.
-
- For example, the GDB version 6.3 distribution is in the `gdb-6.3'
-directory. That directory contains:
+a single directory. That directory contains:
-`gdb-6.3/{COPYING,COPYING.LIB}'
+`gdb-VERSION/{COPYING,COPYING.LIB}'
Standard GNU license files. Please read them.
-`gdb-6.3/bfd'
+`gdb-VERSION/bfd'
source for the Binary File Descriptor library
-`gdb-6.3/config*'
+`gdb-VERSION/config*'
script for configuring GDB, along with other support files
-`gdb-6.3/gdb'
+`gdb-VERSION/gdb'
the source specific to GDB itself
-`gdb-6.3/include'
+`gdb-VERSION/include'
GNU include files
-`gdb-6.3/libiberty'
+`gdb-VERSION/libiberty'
source for the `-liberty' free software library
-`gdb-6.3/opcodes'
+`gdb-VERSION/opcodes'
source for the library of opcode tables and disassemblers
-`gdb-6.3/readline'
+`gdb-VERSION/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-6.3/sim'
+`gdb-VERSION/sim'
source for some simulators (ARM, D10V, SPARC, M32R, MIPS, PPC, V850, etc)
-`gdb-6.3/texinfo'
+`gdb-VERSION/texinfo'
The `texinfo.tex' file, which you need in order to make a printed
manual using TeX.
-`gdb-6.3/etc'
+`gdb-VERSION/etc'
Coding standards, useful files for editing GDB, and other
miscellanea.
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-6.3' directory.
+from the `gdb-VERSION' directory.
- First switch to the `gdb-VERSION-NUMBER' source directory if you are
+ First switch to the `gdb-VERSION' source directory if you are
not already in it; then run `configure'.
For example:
- cd gdb-6.3
+ cd gdb-VERSION
./configure
make
sh configure
If you run `configure' from a directory that contains source
-directories for multiple libraries or programs, such as the `gdb-6.3'
-source directory for version 6.3, `configure' creates configuration
-files for every directory level underneath (unless you tell it not to,
-with the `--norecursion' option).
-
- You can run the `configure' script from any of the subordinate
-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 6.3, type the following to configure only
-the `bfd' subdirectory:
-
- cd gdb-6.3/bfd
- ../configure
+directories for multiple libraries or programs, `configure' creates
+configuration files for every directory level underneath (unless
+you tell it not to, with the `--norecursion' option).
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'
argument to `--srcdir', you can leave out the `--srcdir' option; it
will be assumed.)
- For example, with version 6.3, you can build GDB in a separate
+ For example, you can build GDB in a separate
directory for a Sun 4 like this:
- cd gdb-6.3
+ cd gdb-VERSION
mkdir ../gdb-sun4
cd ../gdb-sun4
- ../gdb-6.3/configure
+ ../gdb-VERSION/configure
make
When `configure' builds a configuration using a remote source
The `Makefile' that `configure' generates in each source directory
also runs recursively. If you type `make' in a source directory such
-as `gdb-6.3' (or in a separate configured directory configured with
-`--srcdir=PATH/gdb-6.3'), you will build all the required libraries,
+as `gdb-VERSION' (or in a separate configured directory configured with
+`--srcdir=PATH/gdb-VERSION'), you will build all the required libraries,
and then build GDB.
When you have multiple hosts or targets configured in separate
% sh config.sub i786v
Invalid configuration `i786v': machine `i786v' not recognized
-`config.sub' is also distributed in the GDB source directory
-(`gdb-6.3', for version 6.3).
+`config.sub' is also distributed in the GDB source directory.
`configure' options
Build GDB with the gdbtk GUI interface. Requires TCL/Tk to be
installed.
-`--with-libunwind'
- Use the libunwind library for unwinding function call stack. See
- http://www.nongnu.org/libunwind/index.html fro details.
- Supported only on some platforms.
+`--with-libunwind-ia64'
+ Use the libunwind library for unwinding function call stack on ia64
+ target platforms.
+ See http://www.nongnu.org/libunwind/index.html for details.
`--with-curses'
Use the curses library instead of the termcap library, for
with the remote.c stub over a serial line.
The directory gdb/gdbserver/ contains `gdbserver', a program that
-allows remote debugging for Unix applications. gdbserver is only
+allows remote debugging for Unix applications. GDBserver is only
supported for some native configurations, including Sun 3, Sun 4, and
Linux.
-The file gdb/gdbserver/README includes further notes on gdbserver; in
-particular, it explains how to build gdbserver for cross-debugging
-(where gdbserver runs on the target machine, which is of a different
+The file gdb/gdbserver/README includes further notes on GDBserver; in
+particular, it explains how to build GDBserver for cross-debugging
+(where GDBserver runs on the target machine, which is of a different
architecture than the host machine running GDB).
There are a number of remote interfaces for talking to existing ROM
As an alternative, the bug report can be submitted, via e-mail, to the
address "bug-gdb@gnu.org".
- When submitting a bug, please include the GDB version number (e.g.,
-gdb-6.3), and how you configured it (e.g., "sun4" or "mach386 host,
+ When submitting a bug, please include the GDB version number, 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
-GDB prints when it starts up, or failing that, the actual configure
-command that you used when configuring GDB.
+this. If at all possible, you should include the actual banner
+that GDB prints when it starts up, or failing that, the actual
+configure command that you used when configuring GDB.
For more information on how/whether to report bugs, see the
Reporting Bugs chapter of the GDB manual (gdb/doc/gdb.texinfo).
Once DejaGNU is installed, you can run the tests in one of the
following ways:
- (1) cd gdb-6.3
+ (1) cd gdb-VERSION
make check-gdb
or
- (2) cd gdb-6.3/gdb
+ (2) cd gdb-VERSION/gdb
make check
or
- (3) cd gdb-6.3/gdb/testsuite
+ (3) cd gdb-VERSION/gdb/testsuite
make site.exp (builds the site specific file)
runtest -tool gdb GDB=../gdb (or GDB=<somepath> as appropriate)
+When using a `make'-based method, you can use the Makefile variable
+`RUNTESTFLAGS' to pass flags to `runtest', e.g.:
+
+ make RUNTESTFLAGS=--directory=gdb.cp check
+
+If you use GNU make, you can use its `-j' option to run the testsuite
+in parallel. This can greatly reduce the amount of time it takes for
+the testsuite to run. In this case, if you set `RUNTESTFLAGS' then,
+by default, the tests will be run serially even under `-j'. You can
+override this and force a parallel run by setting the `make' variable
+`FORCE_PARALLEL' to any non-empty value. Note that the parallel `make
+check' assumes that you want to run the entire testsuite, so it is not
+compatible with some dejagnu options, like `--directory'.
+
The last method gives you slightly more control in case of problems
with building one or more test executables or if you are using the
testsuite `standalone', without it being part of the GDB source tree.
See the DejaGNU documentation for further details.
+
+Copyright and License Notices
+=============================
+
+Most files maintained by the GDB Project contain a copyright notice
+as well as a license notice, usually at the start of the file.
+
+To reduce the length of copyright notices, consecutive years in the
+copyright notice can be combined into a single range. For instance,
+the following list of copyright years...
+
+ 1986, 1988, 1989, 1991-1993, 1999, 2000, 2007, 2008, 2009, 2010, 2011
+
+... is abbreviated into:
+
+ 1986, 1988-1989, 1991-1993, 1999-2000, 2007-2011
+
+Every year of each range, inclusive, is a copyrightable year that
+could be listed individually.
+
\f
(this is for editing this file with GNU emacs)
Local Variables: