When GDB finds a symbol file, it scans the symbols in the file in order to construct an internal symbol table. This lets most GDB operations work quickly—at the cost of a delay early on. For large programs, this delay can be quite lengthy, so GDB provides a way to build an index, which speeds up startup.
To determine whether a file contains such an index, use the command
readelf -S filename: the index is stored in a section named
.gdb_index. The index file can only be produced on systems which use ELF binaries and DWARF debug information (i.e., sections named
gdb-add-index uses GDB and objdump found in the PATH environment variable. If you want to use different versions of these programs, you can specify them through the GDB and OBJDUMP environment variables.
See more in the GDB manual in node
Index Files — shell command
info -f gdb -n "Index Files".
The full documentation for GDB is maintained as a Texinfo manual. If the
gdb programs and GDB's Texinfo documentation are properly installed at your site, the command
should give you access to the complete manual.
Using GDB: A Guide to the GNU Source-Level Debugger, Richard M. Stallman and Roland H. Pesch, July 1991.
Copyright (c) 1988-2021 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with the Invariant Sections being “Free Software” and “Free Software Needs Free Documentation”, with the Front-Cover Texts being “A GNU Manual,” and with the Back-Cover Texts as in (a) below.
(a) The FSF's Back-Cover Text is: “You are free to copy and modify this GNU Manual. Buying copies from GNU Press supports the FSF in developing GNU and promoting software freedom.”