A debugging data format is a means of storing information about a compiled
computer program
A computer program is a sequence or set of instructions in a programming language for a computer to Execution (computing), execute. It is one component of software, which also includes software documentation, documentation and other intangibl ...
for use by high-level
debugger
A debugger is a computer program used to test and debug other programs (the "target" programs). Common features of debuggers include the ability to run or halt the target program using breakpoints, step through code line by line, and display ...
s. Modern debugging data formats store enough information to allow source-level debugging.
High-level debuggers need information about variables, types, constants, subroutines and so on, so they can translate between machine-level storage and source language constructs. Such information can also be used by other software tools. The information must be generated by the
compiler
In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
and stored in the
executable
In computer science, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), in ...
file or
dynamic library by the linker.
Some
object file
An object file is a file that contains machine code or bytecode, as well as other data and metadata, generated by a compiler or assembler from source code during the compilation or assembly process. The machine code that is generated is kno ...
formats include debugging information, but others can use generic debugging data formats such as
stabs and
DWARF
Dwarf, dwarfs or dwarves may refer to:
Common uses
*Dwarf (folklore), a supernatural being from Germanic folklore
* Dwarf, a human or animal with dwarfism
Arts, entertainment, and media Fictional entities
* Dwarf (''Dungeons & Dragons''), a sh ...
.
List of debugging formats
*
stabs
*
COFF
The Common Object File Format (COFF) is a format for executable, object code, and shared library computer files used on Unix systems. It was introduced in Unix System V, replaced the previously used a.out format, and formed the basis for ext ...
*
Portable Executable
The Portable Executable (PE) format is a file format for executables, object file, object code, Dynamic-link library, dynamic-link-libraries (DLLs), and binary files used on 32-bit and 64-bit Microsoft Windows, Windows operating systems, as well ...
(PE/COFF)
*
Relocatable Object Module Format (OMF)
*
IEEE-695
*
DWARF
Dwarf, dwarfs or dwarves may refer to:
Common uses
*Dwarf (folklore), a supernatural being from Germanic folklore
* Dwarf, a human or animal with dwarfism
Arts, entertainment, and media Fictional entities
* Dwarf (''Dungeons & Dragons''), a sh ...
See also
*
Debug symbol
References
* (NB. Concentrates on DWARF, but also discusses debugging formats in general, with an overview of all the major formats.)
Computer file formats
{{programming-software-stub