binutils-gdb/binutils/objdump.1
Ian Lance Taylor de3b08ac2e Added -D (--dynamic) option to nm and -T (--dynamic-syms) and -R
(--dynamic-reloc) arguments to objdump.
	* nm.c (dynamic): New static variable.
	(long_options): Added "dynamic".
	(usage): Mention -D and --dynamic.
	(main): Add D to getopt string.  Handle -D by setting dynamic.
	(display_rel_file): If dynamic is non-zero, read dynamic symbols
	rather than normal symbols.
	* nm.1: Updated for -D (--dynamic) option.
	* objdump.c (dump_dynamic_symtab): New global variable.
	(dump_dynamic_reloc_info): New global variable.
	(dynsyms, dynsymcount): New global variables.
	(usage): Mention -R, -T, --dynamic-syms and --dynamic-reloc.
	(long_options): Added "dynamic-reloc" and "dynamic-syms".
	(slurp_symtab): If no symbols, return rather than exit.
	(slurp_dynamic_symtab): New function.
	(display_bfd): Handle dump_dynamic_symtab and
	dump_dynamic_reloc_info.
	(dump_symbols): Take new dynamic argument, indicating whether to
	display dynamic symbols.
	(dump_relocs): Move most printing into dump_reloc_set.
	(dump_dynamic_relocs): New function.
	(dump_reloc_set): New function, extracted from dump_relocs.
	(main): Add R and T to getopt string.  Handle -T by setting
	dump_dynamic_symtab and -R by setting dump_dynamic_reloc_info.
	* objdump.1: Updated for -R (--dynamic-reloc) and -T
	(--dynamic-syms) options.
	* binutils.texi: Updated for new nm and objdump options.
1994-04-07 02:04:34 +00:00

295 lines
6.1 KiB
Groff

.\" Copyright (c) 1991 Free Software Foundation
.\" See section COPYING for conditions for redistribution
.TH objdump 1 "5 November 1991" "cygnus support" "GNU Development Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
objdump \- display information from object files.
.SH SYNOPSIS
.hy 0
.na
.TP
.B objdump
.RB "[\|" \-a | \-\-archive\-headers "\|]"
.RB "[\|" "\-b\ "\c
.I bfdname\c
.RB " | " "\-\-target="\c
.I bfdname\c
\&\|]
.RB "[\|" \-d | \-\-disassemble "\|]"
.RB "[\|" \-f | \-\-file\-headers "\|]"
.RB "[\|" \-h | \-\-section\-headers
.RB "| " \-\-headers "\|]"
.RB "[\|" \-i | \-\-info "\|]"
.RB "[\|" "\-j\ "\c
.I section\c
.RB " | " "\-\-section="\c
.I section\c
\&\|]
.RB "[\|" \-l | \-\-line\-numbers "\|]"
.RB "[\|" "\-m\ "\c
.I machine\c
.RB " | " "\-\-architecture="\c
.I machine\c
\&\|]
.RB "[\|" \-r | \-\-reloc "\|]"
.RB "[\|" \-R | \-\-dynamic\-reloc "\|]"
.RB "[\|" \-s | \-\-full\-contents "\|]"
.RB "[\|" \-\-stabs "\|]"
.RB "[\|" \-t | \-\-syms "\|]"
.RB "[\|" \-T | \-\-dynamic\-syms "\|]"
.RB "[\|" \-x | \-\-all\-headers "\|]"
.RB "[\|" \-\-version "\|]"
.RB "[\|" \-\-help "\|]"
.I objfile\c
\&.\|.\|.
.ad b
.hy 1
.SH DESCRIPTION
\c
.B objdump\c
\& displays information about one or more object files.
The options control what particular information to display. This
information is mostly useful to programmers who are working on the
compilation tools, as opposed to programmers who just want their
program to compile and work.
.PP
.IR "objfile" .\|.\|.
are the object files to be examined. When you specify archives,
\c
.B objdump\c
\& shows information on each of the member object files.
.SH OPTIONS
Where long and short forms of an option are shown together, they are
equivalent. At least one option besides
.B \-l
(\fB\-\-line\-numbers\fP) must be given.
.TP
.B \-a
.TP
.B \-\-archive\-headers
If any files from \c
.I objfile\c
\& are archives, display the archive
header information (in a format similar to `\|\c
.B ls \-l\c
\|'). Besides the
information you could list with `\|\c
.B ar tv\c
\|', `\|\c
.B objdump \-a\c
\|' shows
the object file format of each archive member.
.TP
.BI "\-b " "bfdname"\c
.TP
.BI "\-\-target=" "bfdname"\c
\&
Specify the object-code format for the object files to be
\c
.I bfdname\c
\&. This may not be necessary; \c
.I objdump\c
\& can
automatically recognize many formats. For example,
.sp
.br
objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
.br
.sp
display summary information from the section headers (`\|\c
.B \-h\c
\|') of
`\|\c
.B fu.o\c
\|', which is explicitly identified (`\|\c
.B \-m\c
\|') as a Vax object
file in the format produced by Oasys compilers. You can list the
formats available with the `\|\c
.B \-i\c
\|' option.
.TP
.B \-d
.TP
.B \-\-disassemble
Display the assembler mnemonics for the machine
instructions from \c
.I objfile\c
\&.
.TP
.B \-f
.TP
.B \-\-file\-headers
Display summary information from the overall header of
each file in \c
.I objfile\c
\&.
.TP
.B \-h
.TP
.B \-\-section\-headers
.TP
.B \-\-headers
Display summary information from the section headers of the
object file.
.TP
.B \-\-help
Print a summary of the options to
.B objdump
and exit.
.TP
.B \-i
.TP
.B \-\-info
Display a list showing all architectures and object formats available
for specification with \c
.B \-b\c
\& or \c
.B \-m\c
\&.
.TP
.BI "\-j " "name"\c
.TP
.BI "\-\-section=" "name"\c
\&
Display information only for section \c
.I name\c
\&
.TP
.B \-l
.TP
.B \-\-line\-numbers
Label the display (using debugging information) with the filename
and source line numbers corresponding to the object code shown.
Only useful with \fB\-d\fP.
.TP
.BI "\-m " "machine"\c
.TP
.BI "\-\-architecture=" "machine"\c
\&
Specify the object files \c
.I objfile\c
\& are for architecture
\c
.I machine\c
\&. You can list available architectures using the `\|\c
.B \-i\c
\|'
option.
.TP
.B \-r
.TP
.B \-\-reloc
Print the relocation entries of the file.
.TP
.B \-R
.TP
.B \-\-dynamic\-reloc
Print the dynamic relocation entries of the file. This is only
meaningful for dynamic objects, such as certain types of shared
libraries.
.TP
.B \-s
.TP
.B \-\-full\-contents
Display the full contents of any sections requested.
.TP
.B \-\-stabs
Display the contents of the .stab, .stab.index, and .stab.excl
sections from an ELF file. This is only useful on systems (such as
Solaris 2.0) in which .stab debugging symbol-table entries are carried
in an ELF section. In most other file formats, debugging symbol-table
entries are interleaved with linkage symbols, and are visible in the
\-\-syms output.
.TP
.B \-t
.TP
.B \-\-syms
Symbol Table. Print the symbol table entries of the file.
This is similar to the information provided by the `\|\c
.B nm\c
\|' program.
.TP
.B \-T
.TP
.B \-\-dynamic\-syms
Dynamic Symbol Table. Print the dynamic symbol table entries of the
file. This is only meaningful for dynamic objects, such as certain
types of shared libraries. This is similar to the information
provided by the `\|\c
.B nm\c
\|' program when given the
.B \-D (\-\-dynamic)
option.
.TP
.B \-\-version
Print the version number of
.B objdump
and exit.
.TP
.B \-x
.TP
.B \-\-all\-headers
Display all available header information, including the symbol table and
relocation entries. Using `\|\c
.B \-x\c
\|' is equivalent to specifying all of
`\|\c
.B \-a \-f \-h \-r \-t\c
\|'.
.SH "SEE ALSO"
.RB "`\|" binutils "\|'"
entry in
.B
info\c
\&;
.I
The GNU Binary Utilities\c
\&, Roland H. Pesch (October 1991);
.BR nm "(" 1 ")."
.SH COPYING
Copyright (c) 1991 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
.PP
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
.PP
Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.