This page was produced by an automated import process, and may have formatting errors; feel free to fix.

Source Tree Structure

The GDB source directory has a mostly flat structure—there are only a few subdirectories. A file’s name usually gives a hint as to what it does; for example, stabsread.c reads stabs, dwarf2read.c reads DWARF 2, etc.

Files that are related to some common task have names that share common substrings. For example, *-thread.c files deal with debugging threads on various platforms; *read.c files deal with reading various kinds of symbol and object files; inf*.c files deal with direct control of the inferior program (GDB parlance for the program being debugged).

There are several dozens of files in the *-tdep.c family. ‘tdep’ stands for target-dependent code—each of these files implements debug support for a specific target architecture (sparc, mips, etc). Usually, only one of these will be used in a specific GDB configuration (sometimes two, closely related).

Similarly, there are many *-nat.c files, each one for native debugging on a specific system (e.g., sparc-linux-nat.c is for native debugging of Sparc machines running the Linux kernel).

The few subdirectories of the source tree are:

Code that implements CLI, the GDB Command-Line Interpreter. See Command Interpreter.

Code for the GDB remote server.

Code for Insight, the GDB TK-based GUI front-end.

The GDB/MI, the GDB Machine Interface interpreter.

Target signal translation code.

Code for TUI, the GDB Text-mode full-screen User Interface. See TUI.

None: Internals Source-Tree-Structure (last edited 2013-08-20 23:41:23 by StanShebs)

All content (C) 2008 Free Software Foundation. For terms of use, redistribution, and modification, please see the WikiLicense page.