summaryrefslogtreecommitdiffstats
path: root/upstream/fedora-rawhide/man1/readelf.1
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /upstream/fedora-rawhide/man1/readelf.1
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/fedora-rawhide/man1/readelf.1')
-rw-r--r--upstream/fedora-rawhide/man1/readelf.1846
1 files changed, 846 insertions, 0 deletions
diff --git a/upstream/fedora-rawhide/man1/readelf.1 b/upstream/fedora-rawhide/man1/readelf.1
new file mode 100644
index 00000000..050fc2ba
--- /dev/null
+++ b/upstream/fedora-rawhide/man1/readelf.1
@@ -0,0 +1,846 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.45)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\" ========================================================================
+.\"
+.IX Title "READELF 1"
+.TH READELF 1 2024-02-22 binutils-2.42.50 "GNU Development Tools"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH NAME
+readelf \- display information about ELF files
+.SH SYNOPSIS
+.IX Header "SYNOPSIS"
+readelf [\fB\-a\fR|\fB\-\-all\fR]
+ [\fB\-h\fR|\fB\-\-file\-header\fR]
+ [\fB\-l\fR|\fB\-\-program\-headers\fR|\fB\-\-segments\fR]
+ [\fB\-S\fR|\fB\-\-section\-headers\fR|\fB\-\-sections\fR]
+ [\fB\-g\fR|\fB\-\-section\-groups\fR]
+ [\fB\-t\fR|\fB\-\-section\-details\fR]
+ [\fB\-e\fR|\fB\-\-headers\fR]
+ [\fB\-s\fR|\fB\-\-syms\fR|\fB\-\-symbols\fR]
+ [\fB\-\-dyn\-syms\fR|\fB\-\-lto\-syms\fR]
+ [\fB\-\-sym\-base=[0|8|10|16]\fR]
+ [\fB\-\-demangle\fR\fI=style\fR|\fB\-\-no\-demangle\fR]
+ [\fB\-\-quiet\fR]
+ [\fB\-\-recurse\-limit\fR|\fB\-\-no\-recurse\-limit\fR]
+ [\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fR\fImethod\fR]
+ [\fB\-X\fR|\fB\-\-extra\-sym\-info\fR|\fB\-\-no\-extra\-sym\-info\fR]
+ [\fB\-n\fR|\fB\-\-notes\fR]
+ [\fB\-r\fR|\fB\-\-relocs\fR]
+ [\fB\-u\fR|\fB\-\-unwind\fR]
+ [\fB\-d\fR|\fB\-\-dynamic\fR]
+ [\fB\-V\fR|\fB\-\-version\-info\fR]
+ [\fB\-A\fR|\fB\-\-arch\-specific\fR]
+ [\fB\-D\fR|\fB\-\-use\-dynamic\fR]
+ [\fB\-L\fR|\fB\-\-lint\fR|\fB\-\-enable\-checks\fR]
+ [\fB\-x\fR <number or name>|\fB\-\-hex\-dump=\fR<number or name>]
+ [\fB\-p\fR <number or name>|\fB\-\-string\-dump=\fR<number or name>]
+ [\fB\-R\fR <number or name>|\fB\-\-relocated\-dump=\fR<number or name>]
+ [\fB\-z\fR|\fB\-\-decompress\fR]
+ [\fB\-c\fR|\fB\-\-archive\-index\fR]
+ [\fB\-w[lLiaprmfFsoORtUuTgAck]\fR|
+ \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
+ [\fB\-wK\fR|\fB\-\-debug\-dump=follow\-links\fR]
+ [\fB\-wN\fR|\fB\-\-debug\-dump=no\-follow\-links\fR]
+ [\fB\-wD\fR|\fB\-\-debug\-dump=use\-debuginfod\fR]
+ [\fB\-wE\fR|\fB\-\-debug\-dump=do\-not\-use\-debuginfod\fR]
+ [\fB\-P\fR|\fB\-\-process\-links\fR]
+ [\fB\-\-dwarf\-depth=\fR\fIn\fR]
+ [\fB\-\-dwarf\-start=\fR\fIn\fR]
+ [\fB\-\-ctf=\fR\fIsection\fR]
+ [\fB\-\-ctf\-parent=\fR\fIsection\fR]
+ [\fB\-\-ctf\-symbols=\fR\fIsection\fR]
+ [\fB\-\-ctf\-strings=\fR\fIsection\fR]
+ [\fB\-\-sframe=\fR\fIsection\fR]
+ [\fB\-I\fR|\fB\-\-histogram\fR]
+ [\fB\-v\fR|\fB\-\-version\fR]
+ [\fB\-W\fR|\fB\-\-wide\fR]
+ [\fB\-T\fR|\fB\-\-silent\-truncation\fR]
+ [\fB\-H\fR|\fB\-\-help\fR]
+ \fIelffile\fR...
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+\&\fBreadelf\fR displays information about one or more ELF format object
+files. The options control what particular information to display.
+.PP
+\&\fIelffile\fR... are the object files to be examined. 32\-bit and
+64\-bit ELF files are supported, as are archives containing ELF files.
+.PP
+This program performs a similar function to \fBobjdump\fR but it
+goes into more detail and it exists independently of the BFD
+library, so if there is a bug in BFD then readelf will not be
+affected.
+.SH OPTIONS
+.IX Header "OPTIONS"
+The long and short forms of options, shown here as alternatives, are
+equivalent. At least one option besides \fB\-v\fR or \fB\-H\fR must be
+given.
+.IP \fB\-a\fR 4
+.IX Item "-a"
+.PD 0
+.IP \fB\-\-all\fR 4
+.IX Item "--all"
+.PD
+Equivalent to specifying \fB\-\-file\-header\fR,
+\&\fB\-\-program\-headers\fR, \fB\-\-sections\fR, \fB\-\-symbols\fR,
+\&\fB\-\-relocs\fR, \fB\-\-dynamic\fR, \fB\-\-notes\fR,
+\&\fB\-\-version\-info\fR, \fB\-\-arch\-specific\fR, \fB\-\-unwind\fR,
+\&\fB\-\-section\-groups\fR and \fB\-\-histogram\fR.
+.Sp
+Note \- this option does not enable \fB\-\-use\-dynamic\fR itself, so
+if that option is not present on the command line then dynamic symbols
+and dynamic relocs will not be displayed.
+.IP \fB\-h\fR 4
+.IX Item "-h"
+.PD 0
+.IP \fB\-\-file\-header\fR 4
+.IX Item "--file-header"
+.PD
+Displays the information contained in the ELF header at the start of the
+file.
+.IP \fB\-l\fR 4
+.IX Item "-l"
+.PD 0
+.IP \fB\-\-program\-headers\fR 4
+.IX Item "--program-headers"
+.IP \fB\-\-segments\fR 4
+.IX Item "--segments"
+.PD
+Displays the information contained in the file's segment headers, if it
+has any.
+.IP \fB\-\-quiet\fR 4
+.IX Item "--quiet"
+Suppress "no symbols" diagnostic.
+.IP \fB\-S\fR 4
+.IX Item "-S"
+.PD 0
+.IP \fB\-\-sections\fR 4
+.IX Item "--sections"
+.IP \fB\-\-section\-headers\fR 4
+.IX Item "--section-headers"
+.PD
+Displays the information contained in the file's section headers, if it
+has any.
+.IP \fB\-g\fR 4
+.IX Item "-g"
+.PD 0
+.IP \fB\-\-section\-groups\fR 4
+.IX Item "--section-groups"
+.PD
+Displays the information contained in the file's section groups, if it
+has any.
+.IP \fB\-t\fR 4
+.IX Item "-t"
+.PD 0
+.IP \fB\-\-section\-details\fR 4
+.IX Item "--section-details"
+.PD
+Displays the detailed section information. Implies \fB\-S\fR.
+.IP \fB\-s\fR 4
+.IX Item "-s"
+.PD 0
+.IP \fB\-\-symbols\fR 4
+.IX Item "--symbols"
+.IP \fB\-\-syms\fR 4
+.IX Item "--syms"
+.PD
+Displays the entries in symbol table section of the file, if it has one.
+If a symbol has version information associated with it then this is
+displayed as well. The version string is displayed as a suffix to the
+symbol name, preceded by an @ character. For example
+\&\fBfoo@VER_1\fR. If the version is the default version to be used
+when resolving unversioned references to the symbol then it is
+displayed as a suffix preceded by two @ characters. For example
+\&\fBfoo@@VER_2\fR.
+.IP \fB\-\-dyn\-syms\fR 4
+.IX Item "--dyn-syms"
+Displays the entries in dynamic symbol table section of the file, if it
+has one. The output format is the same as the format used by the
+\&\fB\-\-syms\fR option.
+.IP \fB\-\-lto\-syms\fR 4
+.IX Item "--lto-syms"
+Displays the contents of any LTO symbol tables in the file.
+.IP \fB\-\-sym\-base=[0|8|10|16]\fR 4
+.IX Item "--sym-base=[0|8|10|16]"
+Forces the size field of the symbol table to use the given base. Any
+unrecognized options will be treated as \fB0\fR. \fB\-\-sym\-base=0\fR
+represents the default and legacy behaviour. This will output sizes as decimal
+for numbers less than 100000. For sizes 100000 and greater hexadecimal notation
+will be used with a 0x prefix.
+\&\fB\-\-sym\-base=8\fR will give the symbol sizes in octal.
+\&\fB\-\-sym\-base=10\fR will always give the symbol sizes in decimal.
+\&\fB\-\-sym\-base=16\fR will always give the symbol sizes in hexadecimal with a
+0x prefix.
+.IP \fB\-C\fR 4
+.IX Item "-C"
+.PD 0
+.IP \fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR 4
+.IX Item "--demangle[=style]"
+.PD
+Decode (\fIdemangle\fR) low-level symbol names into user-level names.
+This makes C++ function names readable. Different compilers have
+different mangling styles. The optional demangling style argument can
+be used to choose an appropriate demangling style for your
+compiler.
+.IP \fB\-\-no\-demangle\fR 4
+.IX Item "--no-demangle"
+Do not demangle low-level symbol names. This is the default.
+.IP \fB\-\-recurse\-limit\fR 4
+.IX Item "--recurse-limit"
+.PD 0
+.IP \fB\-\-no\-recurse\-limit\fR 4
+.IX Item "--no-recurse-limit"
+.IP \fB\-\-recursion\-limit\fR 4
+.IX Item "--recursion-limit"
+.IP \fB\-\-no\-recursion\-limit\fR 4
+.IX Item "--no-recursion-limit"
+.PD
+Enables or disables a limit on the amount of recursion performed
+whilst demangling strings. Since the name mangling formats allow for
+an infinite level of recursion it is possible to create strings whose
+decoding will exhaust the amount of stack space available on the host
+machine, triggering a memory fault. The limit tries to prevent this
+from happening by restricting recursion to 2048 levels of nesting.
+.Sp
+The default is for this limit to be enabled, but disabling it may be
+necessary in order to demangle truly complicated names. Note however
+that if the recursion limit is disabled then stack exhaustion is
+possible and any bug reports about such an event will be rejected.
+.IP "\fB\-U\fR \fI[d|i|l|e|x|h]\fR" 4
+.IX Item "-U [d|i|l|e|x|h]"
+.PD 0
+.IP \fB\-\-unicode=[default|invalid|locale|escape|hex|highlight]\fR 4
+.IX Item "--unicode=[default|invalid|locale|escape|hex|highlight]"
+.PD
+Controls the display of non-ASCII characters in identifier names.
+The default (\fB\-\-unicode=locale\fR or \fB\-\-unicode=default\fR) is
+to treat them as multibyte characters and display them in the current
+locale. All other versions of this option treat the bytes as UTF\-8
+encoded values and attempt to interpret them. If they cannot be
+interpreted or if the \fB\-\-unicode=invalid\fR option is used then
+they are displayed as a sequence of hex bytes, encloses in curly
+parethesis characters.
+.Sp
+Using the \fB\-\-unicode=escape\fR option will display the characters
+as as unicode escape sequences (\fI\euxxxx\fR). Using the
+\&\fB\-\-unicode=hex\fR will display the characters as hex byte
+sequences enclosed between angle brackets.
+.Sp
+Using the \fB\-\-unicode=highlight\fR will display the characters as
+unicode escape sequences but it will also highlighted them in red,
+assuming that colouring is supported by the output device. The
+colouring is intended to draw attention to the presence of unicode
+sequences when they might not be expected.
+.IP \fB\-X\fR 4
+.IX Item "-X"
+.PD 0
+.IP \fB\-\-extra\-sym\-info\fR 4
+.IX Item "--extra-sym-info"
+.PD
+When displaying details of symbols, include extra information not
+normally presented. Currently this just adds the name of the section
+referenced by the symbol's index field, if there is one. In the
+future more information may be displayed when this option is enabled.
+.Sp
+Enabling this option effectively enables the \fB\-\-wide\fR option as
+well, at least when displaying symbol information.
+.IP \fB\-\-no\-extra\-sym\-info\fR 4
+.IX Item "--no-extra-sym-info"
+Disables the effect of the \fB\-\-extra\-sym\-info\fR option. This
+is the default.
+.IP \fB\-e\fR 4
+.IX Item "-e"
+.PD 0
+.IP \fB\-\-headers\fR 4
+.IX Item "--headers"
+.PD
+Display all the headers in the file. Equivalent to \fB\-h \-l \-S\fR.
+.IP \fB\-n\fR 4
+.IX Item "-n"
+.PD 0
+.IP \fB\-\-notes\fR 4
+.IX Item "--notes"
+.PD
+Displays the contents of the NOTE segments and/or sections, if any.
+.IP \fB\-r\fR 4
+.IX Item "-r"
+.PD 0
+.IP \fB\-\-relocs\fR 4
+.IX Item "--relocs"
+.PD
+Displays the contents of the file's relocation section, if it has one.
+.IP \fB\-u\fR 4
+.IX Item "-u"
+.PD 0
+.IP \fB\-\-unwind\fR 4
+.IX Item "--unwind"
+.PD
+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
+(\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) are currently supported. If
+support is not yet implemented for your architecture you could try
+dumping the contents of the \fI.eh_frames\fR section using the
+\&\fB\-\-debug\-dump=frames\fR or \fB\-\-debug\-dump=frames\-interp\fR
+options.
+.IP \fB\-d\fR 4
+.IX Item "-d"
+.PD 0
+.IP \fB\-\-dynamic\fR 4
+.IX Item "--dynamic"
+.PD
+Displays the contents of the file's dynamic section, if it has one.
+.IP \fB\-V\fR 4
+.IX Item "-V"
+.PD 0
+.IP \fB\-\-version\-info\fR 4
+.IX Item "--version-info"
+.PD
+Displays the contents of the version sections in the file, it they
+exist.
+.IP \fB\-A\fR 4
+.IX Item "-A"
+.PD 0
+.IP \fB\-\-arch\-specific\fR 4
+.IX Item "--arch-specific"
+.PD
+Displays architecture-specific information in the file, if there
+is any.
+.IP \fB\-D\fR 4
+.IX Item "-D"
+.PD 0
+.IP \fB\-\-use\-dynamic\fR 4
+.IX Item "--use-dynamic"
+.PD
+When displaying symbols, this option makes \fBreadelf\fR use the
+symbol hash tables in the file's dynamic section, rather than the
+symbol table sections.
+.Sp
+When displaying relocations, this option makes \fBreadelf\fR
+display the dynamic relocations rather than the static relocations.
+.IP \fB\-L\fR 4
+.IX Item "-L"
+.PD 0
+.IP \fB\-\-lint\fR 4
+.IX Item "--lint"
+.IP \fB\-\-enable\-checks\fR 4
+.IX Item "--enable-checks"
+.PD
+Displays warning messages about possible problems with the file(s)
+being examined. If used on its own then all of the contents of the
+file(s) will be examined. If used with one of the dumping options
+then the warning messages will only be produced for the things being
+displayed.
+.IP "\fB\-x <number or name>\fR" 4
+.IX Item "-x <number or name>"
+.PD 0
+.IP "\fB\-\-hex\-dump=<number or name>\fR" 4
+.IX Item "--hex-dump=<number or name>"
+.PD
+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.
+.IP "\fB\-R <number or name>\fR" 4
+.IX Item "-R <number or name>"
+.PD 0
+.IP "\fB\-\-relocated\-dump=<number or name>\fR" 4
+.IX Item "--relocated-dump=<number or name>"
+.PD
+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.
+.IP "\fB\-p <number or name>\fR" 4
+.IX Item "-p <number or name>"
+.PD 0
+.IP "\fB\-\-string\-dump=<number or name>\fR" 4
+.IX Item "--string-dump=<number or name>"
+.PD
+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.
+.IP \fB\-z\fR 4
+.IX Item "-z"
+.PD 0
+.IP \fB\-\-decompress\fR 4
+.IX Item "--decompress"
+.PD
+Requests that the section(s) being dumped by \fBx\fR, \fBR\fR or
+\&\fBp\fR options are decompressed before being displayed. If the
+section(s) are not compressed then they are displayed as is.
+.IP \fB\-c\fR 4
+.IX Item "-c"
+.PD 0
+.IP \fB\-\-archive\-index\fR 4
+.IX Item "--archive-index"
+.PD
+Displays the file symbol index information contained in the header part
+of binary archives. Performs the same function as the \fBt\fR
+command to \fBar\fR, but without using the BFD library.
+.IP \fB\-w[lLiaprmfFsOoRtUuTgAckK]\fR 4
+.IX Item "-w[lLiaprmfFsOoRtUuTgAckK]"
+.PD 0
+.IP \fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR 4
+.IX Item "--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]"
+.PD
+Displays the contents of the DWARF debug sections in the file, if any
+are present. Compressed debug sections are automatically decompressed
+(temporarily) before they are displayed. If one or more of the
+optional letters or words follows the switch then only those type(s)
+of data will be dumped. The letters and words refer to the following
+information:
+.RS 4
+.ie n .IP """a""" 4
+.el .IP \f(CWa\fR 4
+.IX Item "a"
+.PD 0
+.ie n .IP """=abbrev""" 4
+.el .IP \f(CW=abbrev\fR 4
+.IX Item "=abbrev"
+.PD
+Displays the contents of the \fB.debug_abbrev\fR section.
+.ie n .IP """A""" 4
+.el .IP \f(CWA\fR 4
+.IX Item "A"
+.PD 0
+.ie n .IP """=addr""" 4
+.el .IP \f(CW=addr\fR 4
+.IX Item "=addr"
+.PD
+Displays the contents of the \fB.debug_addr\fR section.
+.ie n .IP """c""" 4
+.el .IP \f(CWc\fR 4
+.IX Item "c"
+.PD 0
+.ie n .IP """=cu_index""" 4
+.el .IP \f(CW=cu_index\fR 4
+.IX Item "=cu_index"
+.PD
+Displays the contents of the \fB.debug_cu_index\fR and/or
+\&\fB.debug_tu_index\fR sections.
+.ie n .IP """f""" 4
+.el .IP \f(CWf\fR 4
+.IX Item "f"
+.PD 0
+.ie n .IP """=frames""" 4
+.el .IP \f(CW=frames\fR 4
+.IX Item "=frames"
+.PD
+Display the raw contents of a \fB.debug_frame\fR section.
+.ie n .IP """F""" 4
+.el .IP \f(CWF\fR 4
+.IX Item "F"
+.PD 0
+.ie n .IP """=frames\-interp""" 4
+.el .IP \f(CW=frames\-interp\fR 4
+.IX Item "=frames-interp"
+.PD
+Display the interpreted contents of a \fB.debug_frame\fR section.
+.ie n .IP """g""" 4
+.el .IP \f(CWg\fR 4
+.IX Item "g"
+.PD 0
+.ie n .IP """=gdb_index""" 4
+.el .IP \f(CW=gdb_index\fR 4
+.IX Item "=gdb_index"
+.PD
+Displays the contents of the \fB.gdb_index\fR and/or
+\&\fB.debug_names\fR sections.
+.ie n .IP """i""" 4
+.el .IP \f(CWi\fR 4
+.IX Item "i"
+.PD 0
+.ie n .IP """=info""" 4
+.el .IP \f(CW=info\fR 4
+.IX Item "=info"
+.PD
+Displays the contents of the \fB.debug_info\fR section. Note: the
+output from this option can also be restricted by the use of the
+\&\fB\-\-dwarf\-depth\fR and \fB\-\-dwarf\-start\fR options.
+.ie n .IP """k""" 4
+.el .IP \f(CWk\fR 4
+.IX Item "k"
+.PD 0
+.ie n .IP """=links""" 4
+.el .IP \f(CW=links\fR 4
+.IX Item "=links"
+.PD
+Displays the contents of the \fB.gnu_debuglink\fR,
+\&\fB.gnu_debugaltlink\fR and \fB.debug_sup\fR sections, if any of
+them are present. Also displays any links to separate dwarf object
+files (dwo), if they are specified by the DW_AT_GNU_dwo_name or
+DW_AT_dwo_name attributes in the \fB.debug_info\fR section.
+.ie n .IP """K""" 4
+.el .IP \f(CWK\fR 4
+.IX Item "K"
+.PD 0
+.ie n .IP """=follow\-links""" 4
+.el .IP \f(CW=follow\-links\fR 4
+.IX Item "=follow-links"
+.PD
+Display the contents of any selected debug sections that are found in
+linked, separate debug info file(s). This can result in multiple
+versions of the same debug section being displayed if it exists in
+more than one file.
+.Sp
+In addition, when displaying DWARF attributes, if a form is found that
+references the separate debug info file, then the referenced contents
+will also be displayed.
+.Sp
+Note \- in some distributions this option is enabled by default. It
+can be disabled via the \fBN\fR debug option. The default can be
+chosen when configuring the binutils via the
+\&\fB\-\-enable\-follow\-debug\-links=yes\fR or
+\&\fB\-\-enable\-follow\-debug\-links=no\fR options. If these are not
+used then the default is to enable the following of debug links.
+.Sp
+Note \- if support for the debuginfod protocol was enabled when the
+binutils were built then this option will also include an attempt to
+contact any debuginfod servers mentioned in the \fIDEBUGINFOD_URLS\fR
+environment variable. This could take some time to resolve. This
+behaviour can be disabled via the \fB=do\-not\-use\-debuginfod\fR debug
+option.
+.ie n .IP """N""" 4
+.el .IP \f(CWN\fR 4
+.IX Item "N"
+.PD 0
+.ie n .IP """=no\-follow\-links""" 4
+.el .IP \f(CW=no\-follow\-links\fR 4
+.IX Item "=no-follow-links"
+.PD
+Disables the following of links to separate debug info files.
+.ie n .IP """D""" 4
+.el .IP \f(CWD\fR 4
+.IX Item "D"
+.PD 0
+.ie n .IP """=use\-debuginfod""" 4
+.el .IP \f(CW=use\-debuginfod\fR 4
+.IX Item "=use-debuginfod"
+.PD
+Enables contacting debuginfod servers if there is a need to follow
+debug links. This is the default behaviour.
+.ie n .IP """E""" 4
+.el .IP \f(CWE\fR 4
+.IX Item "E"
+.PD 0
+.ie n .IP """=do\-not\-use\-debuginfod""" 4
+.el .IP \f(CW=do\-not\-use\-debuginfod\fR 4
+.IX Item "=do-not-use-debuginfod"
+.PD
+Disables contacting debuginfod servers when there is a need to follow
+debug links.
+.ie n .IP """l""" 4
+.el .IP \f(CWl\fR 4
+.IX Item "l"
+.PD 0
+.ie n .IP """=rawline""" 4
+.el .IP \f(CW=rawline\fR 4
+.IX Item "=rawline"
+.PD
+Displays the contents of the \fB.debug_line\fR section in a raw
+format.
+.ie n .IP """L""" 4
+.el .IP \f(CWL\fR 4
+.IX Item "L"
+.PD 0
+.ie n .IP """=decodedline""" 4
+.el .IP \f(CW=decodedline\fR 4
+.IX Item "=decodedline"
+.PD
+Displays the interpreted contents of the \fB.debug_line\fR section.
+.ie n .IP """m""" 4
+.el .IP \f(CWm\fR 4
+.IX Item "m"
+.PD 0
+.ie n .IP """=macro""" 4
+.el .IP \f(CW=macro\fR 4
+.IX Item "=macro"
+.PD
+Displays the contents of the \fB.debug_macro\fR and/or
+\&\fB.debug_macinfo\fR sections.
+.ie n .IP """o""" 4
+.el .IP \f(CWo\fR 4
+.IX Item "o"
+.PD 0
+.ie n .IP """=loc""" 4
+.el .IP \f(CW=loc\fR 4
+.IX Item "=loc"
+.PD
+Displays the contents of the \fB.debug_loc\fR and/or
+\&\fB.debug_loclists\fR sections.
+.ie n .IP """O""" 4
+.el .IP \f(CWO\fR 4
+.IX Item "O"
+.PD 0
+.ie n .IP """=str\-offsets""" 4
+.el .IP \f(CW=str\-offsets\fR 4
+.IX Item "=str-offsets"
+.PD
+Displays the contents of the \fB.debug_str_offsets\fR section.
+.ie n .IP """p""" 4
+.el .IP \f(CWp\fR 4
+.IX Item "p"
+.PD 0
+.ie n .IP """=pubnames""" 4
+.el .IP \f(CW=pubnames\fR 4
+.IX Item "=pubnames"
+.PD
+Displays the contents of the \fB.debug_pubnames\fR and/or
+\&\fB.debug_gnu_pubnames\fR sections.
+.ie n .IP """r""" 4
+.el .IP \f(CWr\fR 4
+.IX Item "r"
+.PD 0
+.ie n .IP """=aranges""" 4
+.el .IP \f(CW=aranges\fR 4
+.IX Item "=aranges"
+.PD
+Displays the contents of the \fB.debug_aranges\fR section.
+.ie n .IP """R""" 4
+.el .IP \f(CWR\fR 4
+.IX Item "R"
+.PD 0
+.ie n .IP """=Ranges""" 4
+.el .IP \f(CW=Ranges\fR 4
+.IX Item "=Ranges"
+.PD
+Displays the contents of the \fB.debug_ranges\fR and/or
+\&\fB.debug_rnglists\fR sections.
+.ie n .IP """s""" 4
+.el .IP \f(CWs\fR 4
+.IX Item "s"
+.PD 0
+.ie n .IP """=str""" 4
+.el .IP \f(CW=str\fR 4
+.IX Item "=str"
+.PD
+Displays the contents of the \fB.debug_str\fR, \fB.debug_line_str\fR
+and/or \fB.debug_str_offsets\fR sections.
+.ie n .IP """t""" 4
+.el .IP \f(CWt\fR 4
+.IX Item "t"
+.PD 0
+.ie n .IP """=pubtype""" 4
+.el .IP \f(CW=pubtype\fR 4
+.IX Item "=pubtype"
+.PD
+Displays the contents of the \fB.debug_pubtypes\fR and/or
+\&\fB.debug_gnu_pubtypes\fR sections.
+.ie n .IP """T""" 4
+.el .IP \f(CWT\fR 4
+.IX Item "T"
+.PD 0
+.ie n .IP """=trace_aranges""" 4
+.el .IP \f(CW=trace_aranges\fR 4
+.IX Item "=trace_aranges"
+.PD
+Displays the contents of the \fB.trace_aranges\fR section.
+.ie n .IP """u""" 4
+.el .IP \f(CWu\fR 4
+.IX Item "u"
+.PD 0
+.ie n .IP """=trace_abbrev""" 4
+.el .IP \f(CW=trace_abbrev\fR 4
+.IX Item "=trace_abbrev"
+.PD
+Displays the contents of the \fB.trace_abbrev\fR section.
+.ie n .IP """U""" 4
+.el .IP \f(CWU\fR 4
+.IX Item "U"
+.PD 0
+.ie n .IP """=trace_info""" 4
+.el .IP \f(CW=trace_info\fR 4
+.IX Item "=trace_info"
+.PD
+Displays the contents of the \fB.trace_info\fR section.
+.RE
+.RS 4
+.Sp
+Note: displaying the contents of \fB.debug_static_funcs\fR,
+\&\fB.debug_static_vars\fR and \fBdebug_weaknames\fR sections is not
+currently supported.
+.RE
+.IP \fB\-\-dwarf\-depth=\fR\fIn\fR 4
+.IX Item "--dwarf-depth=n"
+Limit the dump of the \f(CW\*(C`.debug_info\*(C'\fR section to \fIn\fR children.
+This is only useful with \fB\-\-debug\-dump=info\fR. The default is
+to print all DIEs; the special value 0 for \fIn\fR will also have this
+effect.
+.Sp
+With a non-zero value for \fIn\fR, DIEs at or deeper than \fIn\fR
+levels will not be printed. The range for \fIn\fR is zero-based.
+.IP \fB\-\-dwarf\-start=\fR\fIn\fR 4
+.IX Item "--dwarf-start=n"
+Print only DIEs beginning with the DIE numbered \fIn\fR. This is only
+useful with \fB\-\-debug\-dump=info\fR.
+.Sp
+If specified, this option will suppress printing of any header
+information and all DIEs before the DIE numbered \fIn\fR. Only
+siblings and children of the specified DIE will be printed.
+.Sp
+This can be used in conjunction with \fB\-\-dwarf\-depth\fR.
+.IP \fB\-P\fR 4
+.IX Item "-P"
+.PD 0
+.IP \fB\-\-process\-links\fR 4
+.IX Item "--process-links"
+.PD
+Display the contents of non-debug sections found in separate debuginfo
+files that are linked to the main file. This option automatically
+implies the \fB\-wK\fR option, and only sections requested by other
+command line options will be displayed.
+.IP \fB\-\-ctf[=\fR\fIsection\fR\fB]\fR 4
+.IX Item "--ctf[=section]"
+Display the contents of the specified CTF section. CTF sections themselves
+contain many subsections, all of which are displayed in order.
+.Sp
+By default, display the name of the section named \fI.ctf\fR, which is the
+name emitted by \fBld\fR.
+.IP \fB\-\-ctf\-parent=\fR\fImember\fR 4
+.IX Item "--ctf-parent=member"
+If the CTF section contains ambiguously-defined types, it will consist
+of an archive of many CTF dictionaries, all inheriting from one
+dictionary containing unambiguous types. This member is by default
+named \fI.ctf\fR, like the section containing it, but it is possible to
+change this name using the \f(CW\*(C`ctf_link_set_memb_name_changer\*(C'\fR
+function at link time. When looking at CTF archives that have been
+created by a linker that uses the name changer to rename the parent
+archive member, \fB\-\-ctf\-parent\fR can be used to specify the name
+used for the parent.
+.IP \fB\-\-ctf\-symbols=\fR\fIsection\fR 4
+.IX Item "--ctf-symbols=section"
+.PD 0
+.IP \fB\-\-ctf\-strings=\fR\fIsection\fR 4
+.IX Item "--ctf-strings=section"
+.PD
+Specify the name of another section from which the CTF file can inherit
+strings and symbols. By default, the \f(CW\*(C`.symtab\*(C'\fR and its linked
+string table are used.
+.Sp
+If either of \fB\-\-ctf\-symbols\fR or \fB\-\-ctf\-strings\fR is specified, the
+other must be specified as well.
+.IP \fB\-I\fR 4
+.IX Item "-I"
+.PD 0
+.IP \fB\-\-histogram\fR 4
+.IX Item "--histogram"
+.PD
+Display a histogram of bucket list lengths when displaying the contents
+of the symbol tables.
+.IP \fB\-v\fR 4
+.IX Item "-v"
+.PD 0
+.IP \fB\-\-version\fR 4
+.IX Item "--version"
+.PD
+Display the version number of readelf.
+.IP \fB\-W\fR 4
+.IX Item "-W"
+.PD 0
+.IP \fB\-\-wide\fR 4
+.IX Item "--wide"
+.PD
+Don't break output lines to fit into 80 columns. By default
+\&\fBreadelf\fR breaks section header and segment listing lines for
+64\-bit ELF files, so that they fit into 80 columns. This option causes
+\&\fBreadelf\fR to print each section header resp. each segment one a
+single line, which is far more readable on terminals wider than 80 columns.
+.IP \fB\-T\fR 4
+.IX Item "-T"
+.PD 0
+.IP \fB\-\-silent\-truncation\fR 4
+.IX Item "--silent-truncation"
+.PD
+Normally when readelf is displaying a symbol name, and it has to
+truncate the name to fit into an 80 column display, it will add a
+suffix of \f(CW\*(C`[...]\*(C'\fR to the name. This command line option
+disables this behaviour, allowing 5 more characters of the name to be
+displayed and restoring the old behaviour of readelf (prior to release
+2.35).
+.IP \fB\-H\fR 4
+.IX Item "-H"
+.PD 0
+.IP \fB\-\-help\fR 4
+.IX Item "--help"
+.PD
+Display the command-line options understood by \fBreadelf\fR.
+.IP \fB@\fR\fIfile\fR 4
+.IX Item "@file"
+Read command-line options from \fIfile\fR. The options read are
+inserted in place of the original @\fIfile\fR option. If \fIfile\fR
+does not exist, or cannot be read, then the option will be treated
+literally, and not removed.
+.Sp
+Options in \fIfile\fR are separated by whitespace. A whitespace
+character may be included in an option by surrounding the entire
+option in either single or double quotes. Any character (including a
+backslash) may be included by prefixing the character to be included
+with a backslash. The \fIfile\fR may itself contain additional
+@\fIfile\fR options; any such options will be processed recursively.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fBobjdump\fR\|(1), and the Info entries for \fIbinutils\fR.
+.SH COPYRIGHT
+.IX Header "COPYRIGHT"
+Copyright (c) 1991\-2024 Free Software Foundation, Inc.
+.PP
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3
+or any later version published by the Free Software Foundation;
+with no Invariant Sections, with no Front-Cover Texts, and with no
+Back-Cover Texts. A copy of the license is included in the
+section entitled "GNU Free Documentation License".