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.