Contents|Index|Previous|Next
Installing GDB
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.
See the following documentation for more discussion on installing GDB.
Compiling GDB in another directory
Specifying names for hosts and targets
configure options
(If you have a more recent version of GDB than 4.15-97r1, look at the
README file in the sources; we may have improved the installation procedures since
publishing this documentation.)
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 4.15-97r1 distribution is in the
gdb-4.15-97r1 directory.
That directory contains the following.
gdb-4.15-97r1/configure (and supporting files)
Script for configuring GDB and all its supporting libraries
gdb-4.15-97r1/gdb
The source specific to GDB itself
gdb-4.15-97r1/bfd
Source for the Binary File Descriptor library
gdb-4.15-97r1/include
GNU include files
gdb-4.15-97r1/libiberty
Source for the -liberty free software library
gdb-4.15-97r1/opcodes
Source for the library of opcode tables and disassemblers
gdb-4.15-97r1/readline
Source for the GNU command-line interface
gdb-4.15-97r1/glob
Source for the GNU filename pattern-matching subroutine
gdb-4.15-97r1/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-4.15-97r1 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.
Consider the following, for example.
cd gdb-4.15-97r1
./configure host
make
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-4.15-97r1 source directory for version 4.15-97r1, 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 4.15-97r1, type the following to configure only the bfd subdirectory:
cd gdb-4.15-97r1/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 programsome systems refuse to let GDB debug child processes
whose programs are not readable.