.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (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 .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "READELF 1" .TH READELF 1 2026-01-23 binutils-2.45.1 "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 \- نمایش اطلاعات درباره فایل‌های ELF .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 |\fB\-\-hex\-dump=\fR] [\fB\-p\fR |\fB\-\-string\-dump=\fR] [\fB\-R\fR |\fB\-\-relocated\-dump=\fR] [\fB\-j\fR |\fB\-\-display\-section=\fR] [\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 اطلاعات مربوط به یک یا چند فایل شیء در قالب ELF را نمایش می‌دهد. گزینه‌ها مشخص می‌کنند که چه اطلاعات ویژه‌ای نمایش داده شود. .PP \&\fIelffile\fR... فایل‌های شیء هستند که باید بررسی شوند. فایل‌های ۳۲\-بیتی و ۶۴\-بیتی ELF و همچنین بایگانی‌های حاوی فایل‌های ELF پشتیبانی می‌شوند. .PP این برنامه عملکردی مشابه \fBobjdump\fR انجام می‌دهد اما وارد جزئیات بیشتری می‌شود و مستقل از کتابخانهٔ BFD عمل می‌کند؛ بنابراین اگر اشکالی در BFD وجود داشته باشد، readelf تحت تأثیر قرار نخواهد گرفت. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" شکل‌های کوتاه و بلند گزینه‌ها که در اینجا به صورت جایگزین نشان داده شده‌اند، معادل یکدیگر هستند. به غیر از \fB\-v\fR یا \fB\-H\fR باید حداقل یک گزینه مشخص شود. .IP \fB\-a\fR 4 .IX Item "-a" .PD 0 .IP \fB\-\-all\fR 4 .IX Item "--all" .PD معادل است با مشخص کردن گزینه‌های \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 و \fB\-\-histogram\fR. .Sp توجه \- این گزینه به خودی خود \fB\-\-use\-dynamic\fR را فعال نمی‌کند؛ بنابراین اگر آن گزینه در خط فرمان مشخص نشده باشد، نمادهای پویا (dynamic symbols) و جابه‌جایی‌های پویا (dynamic relocs) نمایش داده نخواهند شد. .IP \fB\-h\fR 4 .IX Item "-h" .PD 0 .IP \fB\-\-file\-header\fR 4 .IX Item "--file-header" .PD اطلاعات موجود در سرآیند ELF در ابتدای فایل را نمایش می‌دهد. .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 در صورت وجود، اطلاعات موجود در سرآیندهای قطعه (segment headers) فایل را نمایش می‌دهد. .IP \fB\-\-quiet\fR 4 .IX Item "--quiet" از نمایش پیام تشخیصی «no symbols» جلوگیری می‌کند. .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 در صورت وجود، اطلاعات موجود در سرآیندهای بخش (section headers) فایل را نمایش می‌دهد. .IP \fB\-g\fR 4 .IX Item "-g" .PD 0 .IP \fB\-\-section\-groups\fR 4 .IX Item "--section-groups" .PD در صورت وجود، اطلاعات موجود در گروه‌های بخش (section groups) فایل را نمایش می‌دهد. .IP \fB\-t\fR 4 .IX Item "-t" .PD 0 .IP \fB\-\-section\-details\fR 4 .IX Item "--section-details" .PD اطلاعات تفصیلی بخش‌ها را نمایش می‌دهد. به طور ضمنی گزینه \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 در صورت وجود، مدخل‌های موجود در بخش جدول نمادها (symbol table) فایل را نمایش می‌دهد. اگر نمادی دارای اطلاعات نگارش مرتبط باشد، آن اطلاعات نیز نمایش داده می‌شود. رشتهٔ نگارش به صورت پسوندی برای نام نماد و پس از یک نویسهٔ @ نمایش داده می‌شود؛ به عنوان مثال \&\fBfoo@VER_1\fR. اگر نگارش، نگارش پیش‌فرضی باشد که هنگام حل ارجاعات بدون نگارش به نماد به کار می‌رود، به صورت پسوندی نمایش داده می‌شود که دو نویسهٔ @ قبل از آن می‌آید؛ به عنوان مثال \&\fBfoo@@VER_2\fR. .IP \fB\-\-dyn\-syms\fR 4 .IX Item "--dyn-syms" در صورت وجود، مدخل‌های بخش جدول نمادهای پویا (dynamic symbol table) فایل را نمایش می‌دهد. قالب خروجی همان قالبی است که توسط گزینهٔ \&\fB\-\-syms\fR استفاده می‌شود. .IP \fB\-\-lto\-syms\fR 4 .IX Item "--lto-syms" محتوای هرگونه جدول نماد LTO موجود در فایل را نمایش می‌دهد. .IP \fB\-\-sym\-base=[0|8|10|16]\fR 4 .IX Item "--sym-base=[0|8|10|16]" فیلد اندازه (size) در جدول نمادها را ملزم به استفاده از مبنای داده‌شده می‌کند. هر گزینهٔ ناشناخته به عنوان \fB0\fR در نظر گرفته می‌شود. \fB\-\-sym\-base=0\fR نمایانگر رفتار پیش‌فرض و سنتی است. در این حالت اندازه‌ها برای مقادیر کمتر از ۱۰۰۰۰۰ به صورت ده‌دهی نمایش داده می‌شوند. برای اندازه‌های ۱۰۰۰۰۰ و بیشتر، نمادگذاری مبنای شانزده با پیشوند 0x استفاده خواهد شد. \&\fB\-\-sym\-base=8\fR اندازه نمادها را در مبنای هشت (octal) نمایش می‌دهد. \&\fB\-\-sym\-base=10\fR اندازه نمادها را همیشه در مبنای ده (decimal) نمایش می‌دهد. \&\fB\-\-sym\-base=16\fR اندازه نمادها را همیشه در مبنای شانزده (hexadecimal) به همراه پیشوند 0x نمایش می‌دهد. .IP \fB\-C\fR 4 .IX Item "-C" .PD 0 .IP \fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR 4 .IX Item "--demangle[=style]" .PD نام نمادهای سطح پایین را رمزگشایی (\fIdemangle\fR) کرده و به نام‌های سطح کاربر تبدیل می‌کند. این کار نام توابع C++ را خوانا می‌سازد. کامپایلرهای مختلف روش‌های متفاوتی برای درهم‌ریزی (mangling) نام‌ها دارند. آرگومان اختیاری سبک demangle کردن می‌تواند برای انتخاب شیوهٔ مناسب برای کامپایلر شما به کار رود. .IP \fB\-\-no\-demangle\fR 4 .IX Item "--no-demangle" نام نمادهای سطح پایین رمزگشایی (demangle) نشوند. این حالت پیش‌فرض است. .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 محدودیت عمق بازگشت در حین رمزگشایی (demangling) رشته‌ها را فعال یا غیرفعال می‌کند. از آنجا که ساختارهای درهم‌ریزیِ نام اجازهٔ سطوح بازگشتی نامحدود را می‌دهند، این امکان وجود دارد که رشته‌هایی تولید شوند که پردازش آن‌ها کل فضای پشتهٔ (stack) موجود در ماشین میزبان را مصرف کرده و باعث خطای دسترسی به حافظه شود. این محدودیت با محدود کردن بازگشت به ۲۰۴۸ سطح تودرتو تلاش می‌کند از این رخداد جلوگیری کند. .Sp به طور پیش‌فرض این محدودیت فعال است، اما برای رمزگشایی نام‌های بسیار پیچیده ممکن است غیرفعال کردن آن ضروری باشد. با این حال توجه داشته باشید که اگر محدودیت بازگشت غیرفعال شود، احتمال اتمام فضای پشته وجود دارد و هرگونه گزارش باگ پیرامون این موضوع رد خواهد شد. .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 نحوهٔ نمایش نویسه‌های غیر ASCII در نام‌های شناسه را کنترل می‌کند. حالت پیش‌فرض (\fB\-\-unicode=locale\fR یا \fB\-\-unicode=default\fR) این است که با آن‌ها به عنوان نویسه‌های چندبایتی برخورد شود و بر اساس لوکال (locale) فعلی نمایش داده شوند. تمام مقادیر دیگر این گزینه، بایت‌ها را به عنوان مقادیر کدگذاری‌شده با UTF\-8 در نظر گرفته و برای تفسیر آن‌ها تلاش می‌کنند. اگر قابل تفسیر نباشند یا اگر گزینهٔ \fB\-\-unicode=invalid\fR استفاده شده باشد، به صورت دنباله‌ای از بایت‌های هگزادسیمال که در نویسه‌های آکوالاد محصور شده‌اند نمایش می‌یابند. .Sp استفاده از گزینهٔ \fB\-\-unicode=escape\fR نویسه‌ها را به صورت دنباله‌های گریز یونیکد (\fI\euxxxx\fR) نمایش می‌دهد. استفاده از \&\fB\-\-unicode=hex\fR نویسه‌ها را به عنوان دنباله‌های بایت هگزادسیمال محصور میان علامت‌های بزرگتر و کوچکتر (< >) نمایش می‌دهد. .Sp استفاده از \fB\-\-unicode=highlight\fR نویسه‌ها را به صورت دنباله‌های گریز یونیکد نمایش می‌دهد و علاوه بر آن (در صورتی که دستگاه خروجی از رنگ پشتیبانی کند) آن‌ها را با رنگ قرمز برجسته می‌سازد. این رنگ‌آمیزی به منظور جلب توجه به حضور دنباله‌های یونیکد در مواردی است که ممکن است انتظار حضور آن‌ها وجود نداشته باشد. .IP \fB\-X\fR 4 .IX Item "-X" .PD 0 .IP \fB\-\-extra\-sym\-info\fR 4 .IX Item "--extra-sym-info" .PD هنگام نمایش جزئیات نمادها، اطلاعات اضافی را که معمولاً نشان داده نمی‌شوند درج می‌کند. در حال حاضر این گزینه تنها نام بخشی را که فیلد نمایهٔ (index) نماد به آن اشاره دارد، در صورت وجود، اضافه می‌کند. در آینده ممکن است با فعال بودن این گزینه اطلاعات بیشتری نمایش داده شود. .Sp فعال کردن این گزینه دست‌کم هنگام نمایش اطلاعات نمادها، عملاً گزینهٔ \fB\-\-wide\fR را نیز فعال می‌کند..IP \fB\-\-no\-extra\-sym\-info\fR 4 .IX Item "--no-extra-sym-info" تاثیر گزینهٔ \fB\-\-extra\-sym\-info\fR را غیرفعال می‌کند. این حالت پیش‌فرض است. .IP \fB\-e\fR 4 .IX Item "-e" .PD 0 .IP \fB\-\-headers\fR 4 .IX Item "--headers" .PD تمام سرآیندهای موجود در فایل را نمایش می‌دهد. معادل با \fB\-h \-l \-S\fR است. .IP \fB\-n\fR 4 .IX Item "-n" .PD 0 .IP \fB\-\-notes\fR 4 .IX Item "--notes" .PD محتویات قطعه‌ها و/یا بخش‌های NOTE را در صورت وجود نمایش می‌دهد. .IP \fB\-r\fR 4 .IX Item "-r" .PD 0 .IP \fB\-\-relocs\fR 4 .IX Item "--relocs" .PD محتویات بخش بازآرایی (relocation) فایل را در صورت وجود نمایش می‌دهد. .IP \fB\-u\fR 4 .IX Item "-u" .PD 0 .IP \fB\-\-unwind\fR 4 .IX Item "--unwind" .PD محتویات بخش unwind (بازپیچی) فایل را در صورت وجود نمایش می‌دهد. در حال حاضر تنها بخش‌های unwind برای فایل‌های IA64 ELF، و همچنین جدول‌های unwind در ARM (\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) پشتیبانی می‌شوند. اگر پشتیبانی برای معماری شما هنوز پیاده‌سازی نشده است، می‌توانید تخلیهٔ محتویات بخش \fI.eh_frames\fR را با استفاده از گزینه‌های \&\fB\-\-debug\-dump=frames\fR یا \fB\-\-debug\-dump=frames\-interp\fR امتحان کنید. .IP \fB\-d\fR 4 .IX Item "-d" .PD 0 .IP \fB\-\-dynamic\fR 4 .IX Item "--dynamic" .PD محتویات بخش پویای (dynamic) فایل را در صورت وجود نمایش می‌دهد. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\-info\fR 4 .IX Item "--version-info" .PD محتویات بخش‌های نسخهٔ موجود در فایل را در صورت وجود نمایش می‌دهد. .IP \fB\-A\fR 4 .IX Item "-A" .PD 0 .IP \fB\-\-arch\-specific\fR 4 .IX Item "--arch-specific" .PD اطلاعات ویژهٔ معماری موجود در فایل را در صورت وجود نمایش می‌دهد. .IP \fB\-D\fR 4 .IX Item "-D" .PD 0 .IP \fB\-\-use\-dynamic\fR 4 .IX Item "--use-dynamic" .PD هنگام نمایش نمادها، این گزینه باعث می‌شود \fBreadelf\fR به جای بخش‌های جدول نماد، از جدول‌های درهم‌سازی نماد در بخش پویای فایل استفاده کند. .Sp هنگام نمایش بازآرایی‌ها، این گزینه باعث می‌شود \fBreadelf\fR بازآرایی‌های پویا را به جای بازآرایی‌های ایستا نمایش دهد. .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 پیام‌های هشدار دربارهٔ مشکلات احتمالی فایل(های) در حال بررسی را نمایش می‌دهد. اگر به تنهایی به کار رود، تمام محتویات فایل(ها) بررسی خواهد شد. اگر همراه با یکی از گزینه‌های تخلیه به کار رود، پیام‌های هشدار تنها برای مواردی تولید می‌شوند که نمایش داده می‌شوند. .IP "\fB\-x \fR" 4 .IX Item "-x " .PD 0 .IP "\fB\-\-hex\-dump=\fR" 4 .IX Item "--hex-dump=" .PD محتویات بخش مشخص‌شده را به صورت بایت‌های هگزادسیمال نمایش می‌دهد. یک عدد، بخش خاصی را با نمایه در جدول بخش‌ها مشخص می‌کند؛ هر رشتهٔ دیگر، تمام بخش‌های با آن نام را در فایل شیء مشخص می‌سازد. این گزینه را می‌توان چندین بار در خط فرمان تکرار کرد تا چند تخلیهٔ هگزادسیمال درخواست شود. .IP "\fB\-R \fR" 4 .IX Item "-R " .PD 0 .IP "\fB\-\-relocated\-dump=\fR" 4 .IX Item "--relocated-dump=" .PD محتویات بخش مشخص‌شده را به صورت بایت‌های هگزادسیمال نمایش می‌دهد. یک عدد، بخش خاصی را با نمایه در جدول بخش‌ها مشخص می‌کند؛ هر رشتهٔ دیگر، تمام بخش‌های با آن نام را در فایل شیء مشخص می‌سازد. محتویات بخش پیش از نمایش بازآرایی خواهند شد. این گزینه را می‌توان چندین بار در خط فرمان تکرار کرد تا چند تخلیهٔ بازآرایی‌شده درخواست شود. .IP "\fB\-p \fR" 4 .IX Item "-p " .PD 0 .IP "\fB\-\-string\-dump=\fR" 4 .IX Item "--string-dump=" .PD محتویات بخش مشخص‌شده را به صورت رشته‌های قابل چاپ نمایش می‌دهد. یک عدد، بخش خاصی را با نمایه در جدول بخش‌ها مشخص می‌کند؛ هر رشتهٔ دیگر، تمام بخش‌های با آن نام را در فایل شیء مشخص می‌سازد. این گزینه را می‌توان چندین بار در خط فرمان تکرار کرد تا چند تخلیهٔ رشته‌ای درخواست شود. .IP "\fB\-j \fR" 4 .IX Item "-j " .PD 0 .IP \fB\-\-display\-section\fR 4 .IX Item "--display-section" .PD محتویات بخش مشخص‌شده را بر اساس نوع سرآیند بخش آن نمایش می‌دهد. بخش‌های حاوی بازآرایی طوری نمایش داده خواهند شد که گویی گزینهٔ \fB\-\-relocations\fR به کار رفته است، بخش‌های حاوی نماد به‌گونه‌ای نمایش داده می‌شوند که گویی از گزینهٔ \fB\-\-syms\fR استفاده شده است، و به همین ترتیب. .Sp یک عدد، بخش خاصی را با نمایه در جدول بخش‌ها مشخص می‌کند؛ هر رشتهٔ دیگر، تمام بخش‌های با آن نام را در فایل(های) ورودی مشخص می‌سازد. .Sp این گزینه را می‌توان چندین بار در خط فرمان تکرار کرد تا تخلیهٔ چند بخش درخواست شود. .IP \fB\-z\fR 4 .IX Item "-z" .PD 0 .IP \fB\-\-decompress\fR 4 .IX Item "--decompress" .PD درخواست می‌کند بخش(هایی) که توسط گزینه‌های \fBx\fR، \fBR\fR یا \&\fBp\fR تخلیه می‌شوند، پیش از نمایش از حالت فشرده خارج شوند. اگر بخش(ها) فشرده نباشند، دست‌نخورده نمایش داده می‌شوند. .IP \fB\-c\fR 4 .IX Item "-c" .PD 0 .IP \fB\-\-archive\-index\fR 4 .IX Item "--archive-index" .PD اطلاعات نمایهٔ نماد فایل موجود در بخش سرآیند آرشیوهای باینری را نمایش می‌دهد. عملکردی مشابه با دستور \fBt\fR در \fBar\fR دارد، اما بدون استفاده از کتابخانهٔ BFD. .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 محتویات بخش‌های اشکال‌زدایی DWARF موجود در فایل را در صورت وجود نمایش می‌دهد. بخش‌های اشکال‌زدایی فشرده‌شده پیش از نمایش، به صورت خودکار (و موقت) از حالت فشرده خارج می‌شوند. اگر یک یا چند حرف یا واژهٔ اختیاری پس از سوییچ قرار گیرد، تنها همان نوع از داده‌ها تخلیه خواهند شد. حروف و واژه‌ها به اطلاعات زیر اشاره دارند: .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 محتویات بخش \fB.debug_abbrev\fR را نمایش می‌دهد. .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 محتویات بخش \fB.debug_addr\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_cu_index\fR و/یا \&\fB.debug_tu_index\fR را نمایش می‌دهد. .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 محتویات خام یک بخش \fB.debug_frame\fR را نمایش می‌دهد. .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 محتویات تفسیرشدهٔ یک بخش \fB.debug_frame\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.gdb_index\fR و/یا \&\fB.debug_names\fR را نمایش می‌دهد. .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 محتویات بخش \fB.debug_info\fR را نمایش می‌دهد. نکته: خروجی این گزینه همچنین می‌تواند با استفاده از گزینه‌های \&\fB\-\-dwarf\-depth\fR و \fB\-\-dwarf\-start\fR محدود شود. .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 محتویات بخش‌های \fB.gnu_debuglink\fR، \&\fB.gnu_debugaltlink\fR و \fB.debug_sup\fR را در صورت وجود نمایش می‌دهد. همچنین هرگونه پیوند به فایل‌های شیء مجزای dwarf (dwo) را در صورتی که توسط صفت‌های DW_AT_GNU_dwo_name یا DW_AT_dwo_name در بخش \fB.debug_info\fR مشخص شده باشند، نمایش می‌دهد. .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 محتویات هر یک از بخش‌های اشکال‌زدایی انتخاب‌شده را که در فایل(های) مجزای پیوندخوردهٔ اطلاعات اشکال‌زدایی یافت شوند، نمایش می‌دهد. در صورتی که یک بخش اشکال‌زدایی در بیش از یک فایل وجود داشته باشد، این عمل می‌تواند منجر به نمایش چندین نسخه از همان بخش اشکال‌زدایی شود. .Sp علاوه بر این، هنگام نمایش صفت‌های DWARF، اگر قالبی یافت شود که به فایل مجزای اطلاعات اشکال‌زدایی ارجاع می‌دهد، محتویات ارجاع‌داده‌شده نیز نمایش داده خواهند شد. .Sp نکته \- در برخی توزیع‌ها این گزینه به‌طور پیش‌فرض فعال است. می‌توان آن را از طریق گزینهٔ اشکال‌زدایی \fBN\fR غیرفعال کرد. پیش‌فرض را می‌توان هنگام پیکربندی binutils از طریق گزینه‌های \&\fB\-\-enable\-follow\-debug\-links=yes\fR یا \&\fB\-\-enable\-follow\-debug\-links=no\fR انتخاب کرد. اگر از این گزینه‌ها استفاده نشود، حالت پیش‌فرض فعال بودن دنبال کردن پیوندهای اشکال‌زدایی است. .Sp نکته \- اگر هنگام ساخت binutils پشتیبانی از پروتکل debuginfod فعال شده باشد، این گزینه تلاشی برای برقراری ارتباط با هر سرور debuginfod ذکرشده در متغیر محیطی \fIDEBUGINFOD_URLS\fR را نیز در بر خواهد گرفت. پاسخ این درخواست ممکن است مدتی زمان ببرد. این رفتار را می‌توان از طریق گزینهٔ اشکال‌زدایی \fB=do\-not\-use\-debuginfod\fR غیرفعال کرد. .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 دنبال کردن پیوندها به فایل‌های مجزای اطلاعات اشکال‌زدایی را غیرفعال می‌کند. .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 در صورت نیاز به دنبال کردن پیوندهای اشکال‌زدایی، برقراری ارتباط با سرورهای debuginfod را فعال می‌کند. این رفتار پیش‌فرض است. .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 هنگامی که نیاز به دنبال کردن پیوندهای اشکال‌زدایی وجود دارد، برقراری ارتباط با سرورهای debuginfod را غیرفعال می‌کند. .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 محتویات بخش \fB.debug_line\fR را به قالب خام نمایش می‌دهد. .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 محتویات تفسیرشدهٔ بخش \fB.debug_line\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_macro\fR و/یا \&\fB.debug_macinfo\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_loc\fR و/یا \&\fB.debug_loclists\fR را نمایش می‌دهد. .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 محتویات بخش \fB.debug_str_offsets\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_pubnames\fR و/یا \&\fB.debug_gnu_pubnames\fR را نمایش می‌دهد. .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 محتویات بخش \fB.debug_aranges\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_ranges\fR و/یا \&\fB.debug_rnglists\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_str\fR، \fB.debug_line_str\fR و/یا \fB.debug_str_offsets\fR را نمایش می‌دهد. .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 محتویات بخش‌های \fB.debug_pubtypes\fR و/یا \&\fB.debug_gnu_pubtypes\fR را نمایش می‌دهد. .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 محتویات بخش \fB.trace_aranges\fR را نمایش می‌دهد. .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 محتویات بخش \fB.trace_abbrev\fR را نمایش می‌دهد. .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 محتویات بخش \fB.trace_info\fR را نمایش می‌دهد. .RE .RS 4 .Sp نکته: نمایش محتویات بخش‌های \fB.debug_static_funcs\fR، \&\fB.debug_static_vars\fR و \fBdebug_weaknames\fR در حال حاضر پشتیبانی نمی‌شود. .RE .IP \fB\-\-dwarf\-depth=\fR\fIn\fR 4 .IX Item "--dwarf-depth=n" برون‌ریزی بخش \f(CW\*(C`.debug_info\*(C'\fR را به \fIn\fR فرزند محدود می‌کند. این گزینه فقط با \fB\-\-debug\-dump=info\fR کاربرد دارد. حالت پیش‌فرض، چاپ تمام DIEها است؛ مقدار ویژهٔ ۰ برای \fIn\fR نیز همین اثر را خواهد داشت. .Sp با یک مقدار غیرصفر برای \fIn\fR، DIEهای واقع در سطح \fIn\fR یا عمیق‌تر از آن چاپ نخواهند شد. محدوده برای \fIn\fR مبتنی بر صفر است. .IP \fB\-\-dwarf\-start=\fR\fIn\fR 4 .IX Item "--dwarf-start=n" فقط DIEهایی را چاپ می‌کند که با DIE شمارهٔ \fIn\fR آغاز می‌شوند. این گزینه فقط با \fB\-\-debug\-dump=info\fR کاربرد دارد. .Sp در صورت تعیین، این گزینه از چاپ هرگونه اطلاعات سرآیند و تمام DIEهای قبل از DIE شمارهٔ \fIn\fR جلوگیری می‌کند. تنها هم‌نیاها (siblings) و فرزندان DIE مشخص‌شده چاپ خواهند شد. .Sp می‌توان از این گزینه در کنار \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 محتویات بخش‌های غیردیباگ موجود در فایل‌های debuginfo جداگانه که به فایل اصلی پیوند دارند را نمایش می‌دهد. این گزینه به‌طور خودکار گزینهٔ \fB\-wK\fR را در بر دارد، و تنها بخش‌هایی نمایش داده می‌شوند که توسط سایر گزینه‌های خط فرمان درخواست شده باشند. .IP \fB\-\-ctf[=\fR\fIsection\fR\fB]\fR 4 .IX Item "--ctf[=section]" محتویات بخش CTF مشخص‌شده را نمایش می‌دهد. بخش‌های CTF خود شامل زیربخش‌های بسیاری هستند که همگی به ترتیب نمایش داده می‌شوند. .Sp به‌طور پیش‌فرض، محتویات بخشی به نام \fI.ctf\fR را نمایش می‌دهد، که نام تولیدشده توسط \fBld\fR است. .IP \fB\-\-ctf\-parent=\fR\fImember\fR 4 .IX Item "--ctf-parent=member" اگر بخش CTF حاوی انواعی با تعریف مبهم باشد، از آرشیوی متشکل از چندین واژه‌نامهٔ CTF تشکیل خواهد شد که همگی از یک واژه‌نامه شامل انواع صریح و بدون ابهام ارث‌بری می‌کنند. این عضو به‌طور پیش‌فرض همانند بخشی که آن را در بر دارد \fI.ctf\fR نامیده می‌شود، اما امکان تغییر این نام با استفاده از تابع \f(CW\*(C`ctf_link_set_memb_name_changer\*(C'\fR در زمان پیوند وجود دارد. هنگام بازرسی آرشیوهای CTF که توسط پیونددهنده‌ای با استفاده از تغییردهندهٔ نام عضو والد آرشیو ایجاد شده‌اند، می‌توان از \fB\-\-ctf\-parent\fR برای تعیین نام استفاده‌شده برای والد بهره برد. .IP \fB\-\-ctf\-parent\-section=\fR\fIsection\fR 4 .IX Item "--ctf-parent-section=section" این گزینه امکان انتخاب بخشی کاملاً متفاوت را برای واژه‌نامهٔ والد CTF شامل انواع صریح، نسبت به واژه‌نامه‌های فرزند حاوی باقی‌ماندهٔ موارد مبهم، فراهم می‌سازد. پیونددهنده اشیاء ELF را با چنین ساختاری تولید نمی‌کند، اما برخی پیونددهنده‌های متفرقه (third\-party) ممکن است این کار را انجام دهند. همچنین برای بررسی داده‌های CTF که به صورت چندین فایل خام نوشته شده‌اند تا با objcopy ادغام شوند بسیار مناسب است، چرا که objcopy می‌تواند آن‌ها را در بخش‌های مختلف ELF قرار دهد اما نمی‌تواند در اعضای مختلف یک دیکشنری CTF واحد بنشاند. .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 نام بخش دیگری را مشخص می‌کند که فایل CTF می‌تواند رشته‌ها و نمادها را از آن به ارث ببرد. به‌طور پیش‌فرض، از \f(CW\*(C`.symtab\*(C'\fR و جدول رشتهٔ متصل به آن استفاده می‌شود. .Sp در صورت تعیین هر یک از گزینه‌های \fB\-\-ctf\-symbols\fR یا \fB\-\-ctf\-strings\fR، تعیین دیگری نیز الزامی است. .IP \fB\-I\fR 4 .IX Item "-I" .PD 0 .IP \fB\-\-histogram\fR 4 .IX Item "--histogram" .PD هنگام نمایش محتویات جدول‌های نماد، یک بافت‌نگاشت (histogram) از طول فهرست‌های باکت (bucket) نمایش می‌دهد. .IP \fB\-v\fR 4 .IX Item "-v" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD شماره نسخهٔ readelf را نمایش می‌دهد. .IP \fB\-W\fR 4 .IX Item "-W" .PD 0 .IP \fB\-\-wide\fR 4 .IX Item "--wide" .PD خطوط خروجی را برای جا شدن در ۸۰ ستون نمی‌شکند. به‌طور پیش‌فرض \&\fBreadelf\fR خطوط فهرست سرآیند بخش‌ها و قطعه‌ها را برای فایل‌های ELF ۶۴ بیتی می‌شکند تا در ۸۰ ستون جا شوند. این گزینه باعث می‌شود \&\fBreadelf\fR هر سرآیند بخش یا به همین ترتیب هر قطعه را در یک خط مجزا چاپ کند، که در پایانه‌های عریض‌تر از ۸۰ ستون بسیار خواناتر است. .IP \fB\-T\fR 4 .IX Item "-T" .PD 0 .IP \fB\-\-silent\-truncation\fR 4 .IX Item "--silent-truncation" .PD در حالت عادی هنگامی که readelf نام نمادی را نمایش می‌دهد و برای جا دادن نام در نمای ۸۰ ستونی مجبور به کوتاه‌سازی آن می‌شود، پسوند \f(CW\*(C`[...]\*(C'\fR را به نام می‌افزاید. این گزینهٔ خط فرمان این رفتار را غیرفعال می‌کند و امکان نمایش ۵ نویسهٔ بیشتر از نام را فراهم ساخته و رفتار قدیمی readelf (پیش از انتشار نسخهٔ 2.35) را بازمی‌گرداند..IP \fB\-H\fR 4 .IX Item "-H" .PD 0 .IP \fB\-\-help\fR 4 .IX Item "--help" .PD نمایش گزینه‌های خط فرمانی که توسط \fBreadelf\fR پشتیبانی می‌شوند. .IP \fB@\fR\fIfile\fR 4 .IX Item "@file" گزینه‌های خط فرمان را از \fIfile\fR می‌خواند. گزینه‌های خوانده‌شده جایگزین گزینه اولیه @\fIfile\fR می‌شوند. اگر \fIfile\fR وجود نداشته باشد یا قابل خواندن نباشد، با گزینه به‌صورت لفظی (عینی) رفتار خواهد شد و حذف نمی‌شود. .Sp گزینه‌ها در \fIfile\fR با نویسه خالی (whitespace) از یکدیگر جدا می‌شوند. یک نویسه خالی می‌تواند با قرار دادن کل گزینه در علامت نقل‌قول تکی یا دوتایی، در گزینه گنجانده شود. هر نویسه‌ای (از جمله بک‌اسلش) را می‌توان با پیشوند قرار دادن یک بک‌اسلش قبل از نویسه مورد نظر، درج کرد. خود \fIfile\fR نیز ممکن است شامل گزینه‌های @\fIfile\fR دیگری باشد؛ چنین گزینه‌هایی به‌صورت بازگشتی پردازش خواهند شد. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBobjdump\fR\|(1) و مدخل‌های Info برای \fIbinutils\fR. .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .IX Header "COPYRIGHT" Copyright (c) 1991\-2025 Free Software Foundation, Inc. .PP اجازه کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخه 1.3 یا هر نسخه بعدی منتشر شده توسط بنیاد نرم‌افزارهای آزاد؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد و بدون متون پشت جلد اعطا می‌شود. نسخه‌ای از این مجوز در بخشی با عنوان \(lqGNU Free Documentation License\(rq گنجانده شده است.