blob: 0bd759d5b8dfef8f67d0f744b05720d00107a75d [file] [log] [blame]
<html lang="en">
<head>
<title>Remote Debugging - 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="Targets.html#Targets" title="Targets">
<link rel="next" href="Configurations.html#Configurations" title="Configurations">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
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>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Remote-Debugging"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Configurations.html#Configurations">Configurations</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Targets.html#Targets">Targets</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<h2 class="chapter">20 Debugging Remote Programs</h2>
<p><a name="index-remote-debugging-1059"></a>
If you are trying to debug a program running on a machine that cannot run
<span class="sc">gdb</span> in the usual way, it is often useful to use remote debugging.
For example, you might use remote debugging on an operating system kernel,
or on a small system which does not have a general purpose operating system
powerful enough to run a full-featured debugger.
<p>Some configurations of <span class="sc">gdb</span> have special serial or TCP/IP interfaces
to make this work with particular debugging targets. In addition,
<span class="sc">gdb</span> comes with a generic serial protocol (specific to <span class="sc">gdb</span>,
but not specific to any particular target system) which you can use if you
write the remote stubs&mdash;the code that runs on the remote system to
communicate with <span class="sc">gdb</span>.
<p>Other remote targets may be available in your
configuration of <span class="sc">gdb</span>; use <code>help target</code> to list them.
<ul class="menu">
<li><a accesskey="1" href="Connecting.html#Connecting">Connecting</a>: Connecting to a remote target
<li><a accesskey="2" href="File-Transfer.html#File-Transfer">File Transfer</a>: Sending files to a remote system
<li><a accesskey="3" href="Server.html#Server">Server</a>: Using the gdbserver program
<li><a accesskey="4" href="Remote-Configuration.html#Remote-Configuration">Remote Configuration</a>: Remote configuration
<li><a accesskey="5" href="Remote-Stub.html#Remote-Stub">Remote Stub</a>: Implementing a remote stub
</ul>
</body></html>