binutils, the GNU Binary Utilities

Red Hat Enterprise Linux 3: Developer Tools Guide
Prev | Chapter 2. Basic Principles of the Tools | Next

# 2.11. binutils, the GNU Binary Utilities

`binutils`, the GNU binary utilities, include `ar`, `nm`, `objcopy`, `objdump`, `ranlib`, `size`, `strings`, and `strip`. For targets that use the ELF file format, there is also a tool called `readelf`.

There are three binary utilities, `addr2line`, `windres`, and `dlltool`, that are for use with Cygwin, the porting layer application for Win32 development. The most important of the binary utilities are `objcopy` and `objdump`.

- `objcopy` is a tool to convert object and executable files. It can add and remove sections and symbols, but the most commonly used feature is its ability to change the file format. For example, it can convert an ELF or COFF format executable into an S-record or Intel I-Hex format file. These two formats are often used in building ROM images for standalone and embedded systems. For more information, refer to the objcopy Utility section in Using binutils, the Gnu Binary Utilities.

- `objdump` is a tool to display information about the contents of an object or executable file. It can display symbol tables and section headers and it can also act as a disassembler. `Objdump` also knows about archives and libraries and can be used to display information on all of the object files inside them. For more information, refer to the objdump Utility section in Using binutils, the Gnu Binary Utilities.

  A few of the more useful options for `objdump` include: `-h` (to display section headers), `-t` (to display symbols), `-p` (to display private header information) and `-d` for assembler (to display a disassembly). `-d` normally only disassembles sections that are expected to contain instructions. To disassemble all sections, use `-D` instead. The option `--prefix-addresses` can be used to print a complete address on each line of the disassembler's output.

Prev | Home | Next
make, the GNU Recompiling Tool | Up | Using info, the Documentation Tools