<html lang="en">
<head>
<title>Library List Format - 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="up" href="Remote-Protocol.html#Remote-Protocol" title="Remote Protocol">
<link rel="prev" href="File_002dI_002fO-Remote-Protocol-Extension.html#File_002dI_002fO-Remote-Protocol-Extension" title="File-I/O Remote Protocol Extension">
<link rel="next" href="Memory-Map-Format.html#Memory-Map-Format" title="Memory Map Format">
<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="Library-List-Format"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Memory-Map-Format.html#Memory-Map-Format">Memory Map Format</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="File_002dI_002fO-Remote-Protocol-Extension.html#File_002dI_002fO-Remote-Protocol-Extension">File-I/O Remote Protocol Extension</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Remote-Protocol.html#Remote-Protocol">Remote Protocol</a>
<hr>
</div>

<h3 class="section">D.15 Library List Format</h3>

<p><a name="index-library-list-format_002c-remote-protocol-2531"></a>
On some platforms, a dynamic loader (e.g. <samp><span class="file">ld.so</span></samp>) runs in the
same process as your application to manage libraries.  In this case,
<span class="sc">gdb</span> can use the loader's symbol table and normal memory
operations to maintain a list of shared libraries.  On other
platforms, the operating system manages loaded libraries. 
<span class="sc">gdb</span> can not retrieve the list of currently loaded libraries
through memory operations, so it uses the &lsquo;<samp><span class="samp">qXfer:libraries:read</span></samp>&rsquo;
packet (see <a href="qXfer-library-list-read.html#qXfer-library-list-read">qXfer library list read</a>) instead.  The remote stub
queries the target's operating system and reports which libraries
are loaded.

   <p>The &lsquo;<samp><span class="samp">qXfer:libraries:read</span></samp>&rsquo; packet returns an XML document which
lists loaded libraries and their offsets.  Each library has an
associated name and one or more segment or section base addresses,
which report where the library was loaded in memory.

   <p>For the common case of libraries that are fully linked binaries, the
library should have a list of segments.  If the target supports
dynamic linking of a relocatable object file, its library XML element
should instead include a list of allocated sections.  The segment or
section bases are start addresses, not relocation offsets; they do not
depend on the library's link-time base addresses.

   <p><span class="sc">gdb</span> must be linked with the Expat library to support XML
library lists.  See <a href="Expat.html#Expat">Expat</a>.

   <p>A simple memory map, with one loaded library relocated by a single
offset, looks like this:

<pre class="smallexample">     &lt;library-list&gt;
       &lt;library name="/lib/libc.so.6"&gt;
         &lt;segment address="0x10000000"/&gt;
       &lt;/library&gt;
     &lt;/library-list&gt;
</pre>
   <p>Another simple memory map, with one loaded library with three
allocated sections (.text, .data, .bss), looks like this:

<pre class="smallexample">     &lt;library-list&gt;
       &lt;library name="sharedlib.o"&gt;
         &lt;section address="0x10000000"/&gt;
         &lt;section address="0x20000000"/&gt;
         &lt;section address="0x30000000"/&gt;
       &lt;/library&gt;
     &lt;/library-list&gt;
</pre>
   <p>The format of a library list is described by this DTD:

<pre class="smallexample">     &lt;!-- library-list: Root element with versioning --&gt;
     &lt;!ELEMENT library-list  (library)*&gt;
     &lt;!ATTLIST library-list  version CDATA   #FIXED  "1.0"&gt;
     &lt;!ELEMENT library       (segment*, section*)&gt;
     &lt;!ATTLIST library       name    CDATA   #REQUIRED&gt;
     &lt;!ELEMENT segment       EMPTY&gt;
     &lt;!ATTLIST segment       address CDATA   #REQUIRED&gt;
     &lt;!ELEMENT section       EMPTY&gt;
     &lt;!ATTLIST section       address CDATA   #REQUIRED&gt;
</pre>
   <p>In addition, segments and section descriptors cannot be mixed within a
single library element, and you must supply at least one segment or
section for each library.

   </body></html>

