GDB comes with a configure script that automates the process
of preparing GDB for installation; you can then use make to
build the 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 5.0 distribution is in the
`gdb-5.0' directory. That directory contains:
gdb-5.0/configure (and supporting files)
script for configuring GDB and all its supporting libraries
gdb-5.0/gdb
the source specific to GDB itself
gdb-5.0/bfd
source for the Binary File Descriptor library
gdb-5.0/include
GNU include files
gdb-5.0/libiberty
source for the `-liberty' free software library
gdb-5.0/opcodes
source for the library of opcode tables and disassemblers
gdb-5.0/readline
source for the GNU command-line interface
gdb-5.0/glob
source for the GNU filename pattern-matching subroutine
gdb-5.0/mmalloc
source for the GNU memory-mapped malloc package
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.
First switch to the `gdb-version-number' source directory
if you are not already in it; then run configure. Pass the
identifier for the platform on which GDB will run as an
argument.
For example:
cd gdb-5.0
./configure host
make
where host is an identifier such as `sun4' or
`decstation', that identifies the platform where GDB will run.
(You can often leave off host; configure tries to guess the
correct value by examining your system.)
Running `configure host' and then running make builds the
`bfd', `readline', `mmalloc', and `libiberty'
libraries, then gdb itself. The configured source files, and the
binaries, are left in the corresponding source directories.
configure is a Bourne-shell (/bin/sh) script; if your
system does not recognize this automatically when you run a different
shell, you may need to run sh on it explicitly:
sh configure host
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 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 5.0, type the following to configure only
the bfd subdirectory:
cd gdb-5.0/bfd
../configure host
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' environment variable) is publicly readable. Remember
that GDB uses the shell to start your program--some systems refuse to
let GDB debug child processes whose programs are not readable.