<html lang="en">
<head>
<title>GDB Files - Debugging with GDB</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Debugging with GDB">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Altering.html#Altering" title="Altering">
<link rel="next" href="Targets.html#Targets" title="Targets">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988-2019 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.''
-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="GDB-Files"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Targets.html#Targets">Targets</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Altering.html#Altering">Altering</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>

<h2 class="chapter">18 <span class="sc">gdb</span> Files</h2>

<p><span class="sc">gdb</span> needs to know the file name of the program to be debugged,
both in order to read its symbol table and in order to start your
program.  To debug a core dump of a previous run, you must also tell
<span class="sc">gdb</span> the name of the core dump file.

<ul class="menu">
<li><a accesskey="1" href="Files.html#Files">Files</a>:                        Commands to specify files
<li><a accesskey="2" href="File-Caching.html#File-Caching">File Caching</a>:                 Information about <span class="sc">gdb</span>'s file caching
<li><a accesskey="3" href="Separate-Debug-Files.html#Separate-Debug-Files">Separate Debug Files</a>:         Debugging information in separate files
<li><a accesskey="4" href="MiniDebugInfo.html#MiniDebugInfo">MiniDebugInfo</a>:                Debugging information in a special section
<li><a accesskey="5" href="Index-Files.html#Index-Files">Index Files</a>:                  Index files speed up GDB
<li><a accesskey="6" href="Symbol-Errors.html#Symbol-Errors">Symbol Errors</a>:                Errors reading symbol files
<li><a accesskey="7" href="Data-Files.html#Data-Files">Data Files</a>:                   GDB data files
</ul>

   </body></html>

