readelf [-a|--all]
[-h|--file-header]
[-l|--program-headers|--segments]
[-S|--section-headers|--sections]
[-g|--section-groups]
[-t|--section-details]
[-e|--headers]
[-s|--syms|--symbols]
[--dyn-syms]
[-n|--notes]
[-r|--relocs]
[-u|--unwind]
[-d|--dynamic]
[-V|--version-info]
[-A|--arch-specific]
[-D|--use-dynamic]
[-x <number or name>|--hex-dump=<number or name>]
[-p <number or name>|--string-dump=<number or name>]
[-R <number or name>|--relocated-dump=<number or name>]
[-c|--archive-index]
[-w[lLiaprmfFsoRt]|
--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges]]
[-I|--histogram]
[-v|--version]
[-W|--wide]
[-H|--help]
elffile...
readelf
elffile...
This program performs a similar function to objdump but it goes into more detail and it exists independently of the bfd library, so if there is a bug in bfd
The long and short forms of options, shown here as alternatives, are equivalent. At least one option besides `-v' or `-H' must be given.
-a
--all
--file-header,
--program-headers,
--sections,
--symbols,
--relocs,
--dynamic,
--notes and
--version-info.
-h
--file-header
Displays the information contained in the ELF header at the start of the file.
-l
--program-headers
--segments
Displays the information contained in the file's segment headers, if it has any.
-S
--sections
--section-headers
Displays the information contained in the file's section headers, if it has any.
-g
--section-groups
Displays the information contained in the file's section groups, if it has any.
-t
--section-details
Displays the detailed section information. Implies
-S.
-s
--symbols
--syms
Displays the entries in symbol table section of the file, if it has one.
--dyn-syms
Displays the entries in dynamic symbol table section of the file, if it has one.
-e
--headers
-h -l -S.
-n
--notes
Displays the contents of the NOTE segments and/or sections, if any.
-r
--relocs
Displays the contents of the file's relocation section, if it has one.
-u
--unwind
Displays the contents of the file's unwind section, if it has one. Only the unwind sections for IA64 ELF files, as well as ARM unwind tables (
.ARM.exidx
/
.ARM.extab
) are currently supported.
-d
--dynamic
Displays the contents of the file's dynamic section, if it has one.
-V
--version-info
Displays the contents of the version sections in the file, it they exist.
-A
--arch-specific
Displays architecture-specific information in the file, if there is any.
-D
--use-dynamic
readelf use the symbol hash tables in the file's dynamic section, rather than the symbol table sections.
-x <number or name>
--hex-dump=<number or name>
Displays the contents of the indicated section as a hexadecimal bytes. A number identifies a particular section by index in the section table; any other string identifies all sections with that name in the object file.
-R <number or name>
--relocated-dump=<number or name>
Displays the contents of the indicated section as a hexadecimal bytes. A number identifies a particular section by index in the section table; any other string identifies all sections with that name in the object file. The contents of the section will be relocated before they are displayed.
-p <number or name>
--string-dump=<number or name>
Displays the contents of the indicated section as printable strings. A number identifies a particular section by index in the section table; any other string identifies all sections with that name in the object file.
-c --archive-index Displays the file symbol index infomation contained in the header part of binary archives. Performs the same function as the t command to ar, but without using the BFD library. See ar.
-w[lLiaprmfFsoRt]
--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges]
Note that there is no single letter option to display the content of trace sections.
Note: the =decodedline option will display the interpreted contents of a .debug_line section whereas the =rawline
Note: the =frames-interp option will display the interpreted contents of a .debug_frame section whereas the =frames option dumps the contents in a raw format.
-I
--histogram
Display a histogram of bucket list lengths when displaying the contents of the symbol tables.
-v
--version
Display the version number of readelf.
-W
--wide
readelf breaks section header and segment listing lines for 64-bit ELF files, so that they fit into 80 columns. This option causes
readelf to print each section header resp. each segment one a single line, which is far more readable on terminals wider than 80 columns.
-H
--help
readelf.