Added a few comments here and there
[linux_from_scratch.git] / newxml / appendixa / binutils.xml
blobbead7173ca9741d809d6dfcf7796c94b4e003ef2
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3CR2//EN" "http://www.docbook.org/xml/4.3CR2/docbookx.dtd" [
3   <!ENTITY % binutils-entities SYSTEM "../ent/binutils.ent">
4   %binutils-entities;
5 ]>
6 <sect1 id="aa-binutils" xreflabel="Binutils">
7 <title>Binutils</title>
8 <?dbhtml filename="binutils.html"?>
10 <para>For installation instructions see <xref linkend="ch06-binutils"/>.</para>
12 <sect2><title>Official Download Location</title>
14 <literallayout>Binutils (&binutils-version;): 
15 <ulink url="ftp://ftp.gnu.org/gnu/binutils/"/></literallayout>
16 </sect2>
19 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="binutils-contents.xml"/>
23 <sect2><title>Short descriptions</title>
25 <para><command>addr2line</command> translates program addresses to file
26 names and line numbers. Given an address and the name of an executable, it
27 uses the debugging information in the executable to figure out which source
28 file and line number are associated with the address.</para>
30 <para><command>ar</command> creates, modifies, and extracts from archives. An archive
31 is a single file holding a collection of other files in a structure that makes
32 it possible to retrieve the original individual files (called members of
33 the archive).</para>
35 <para><command>as</command> is an assembler. It assembles the output of
36 gcc into object files.</para>
38 <para><command>c++filt</command> is used by the linker to demangle C++ and
39 Java symbols, to keep overloaded functions from clashing.</para>
41 <para><command>gprof</command> displays call graph profile data.</para>
43 <para><command>ld</command> is a linker. It combines a number of object
44 and archive files into a single file, relocating their data and tying up symbol
45 references.</para>
47 <para><command>nm</command> lists the symbols occurring in a given object file.</para>
49 <para><command>objcopy</command> is used to translate one type of object
50 file into another.</para>
52 <para><command>objdump</command> displays information about the given
53 object file, with options controlling what particular information to display.
54 The information shown is mostly only useful to programmers who are working on
55 the compilation tools.</para>
57 <para><command>ranlib</command> generates an index of the contents of an
58 archive, and stores it in the archive. The index lists all the symbols defined
59 by archive members that are relocatable object files.</para>
61 <para><command>readelf</command> displays information about elf type binaries.</para>
63 <para><command>size</command> lists the section sizes -- and the grand
64 total -- for the given object files.</para>
66 <para><command>strings</command> outputs for each file given the sequences
67 of printable characters that are of at least the specified length (defaulting to 4)
68 For object files it prints by default only the strings from the initializing
69 and loading sections. For other types of files it scans the whole file.</para>
71 <para><command>strip</command> discards symbols from object files.</para>
73 <para><command>libiberty</command> contains routines used by various GNU
74 programs, including getopt, obstack, strerror, strtol and strtoul.</para>
76 <para><command>libbfd</command> is the Binary File Descriptor library.</para>
78 <para><command>libopcodes</command> is a library for dealing with opcodes.
79 It is used for building utilities like objdump. Opcodes are the "readable text"
80 versions of instructions for the processor.</para>
82 </sect2>
86 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="binutils-deps.xml"/>
90 </sect1>