.\" -*- 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 "NM 1" .TH NM 1 2026-08-03 binutils-2.47 "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)" nm \- فهرست کردن نمادها از فایل‌های شیء .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" nm [\fB\-A\fR|\fB\-o\fR|\fB\-\-print\-file\-name\fR] [\fB\-a\fR|\fB\-\-debug\-syms\fR] [\fB\-B\fR|\fB\-\-format=bsd\fR] [\fB\-C\fR|\fB\-\-demangle\fR[=\fIstyle\fR]] [\fB\-D\fR|\fB\-\-dynamic\fR] [\fB\-f\fR\fIformat\fR|\fB\-\-format=\fR\fIformat\fR] [\fB\-g\fR|\fB\-\-extern\-only\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-\-ifunc\-chars=\fR\fICHARS\fR] [\fB\-j\fR|\fB\-\-format=just\-symbols\fR] [\fB\-l\fR|\fB\-\-line\-numbers\fR] [\fB\-\-inlines\fR] [\fB\-n\fR|\fB\-v\fR|\fB\-\-numeric\-sort\fR] [\fB\-P\fR|\fB\-\-portability\fR] [\fB\-p\fR|\fB\-\-no\-sort\fR] [\fB\-r\fR|\fB\-\-reverse\-sort\fR] [\fB\-S\fR|\fB\-\-print\-size\fR] [\fB\-s\fR|\fB\-\-print\-armap\fR] [\fB\-t\fR \fIradix\fR|\fB\-\-radix=\fR\fIradix\fR] [\fB\-u\fR|\fB\-\-undefined\-only\fR] [\fB\-U\fR|\fB\-\-defined\-only\fR] [\fB\-V\fR|\fB\-\-version\fR] [\fB\-W\fR|\fB\-\-no\-weak\fR] [\fB\-X 32_64\fR] [\fB\-\-no\-demangle\fR] [\fB\-\-no\-recurse\-limit\fR|\fB\-\-recurse\-limit\fR]] [\fB\-\-plugin\fR \fIname\fR] [\fB\-\-size\-sort\fR] [\fB\-\-special\-syms\fR] [\fB\-\-synthetic\fR] [\fB\-\-target=\fR\fIbfdname\fR] [\fB\-\-unicode=\fR\fImethod\fR] [\fB\-\-with\-symbol\-versions\fR] [\fB\-\-without\-symbol\-versions\fR] [\fIobjfile\fR...] .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" ابزار GNU \fBnm\fR نمادهای موجود در فایل‌های شیء \fIobjfile\fR... را فهرست می‌کند. اگر هیچ فایل شیئی به عنوان آرگومان مشخص نشود، \fBnm\fR فایل \&\fIa.out\fR را پیش‌فرض در نظر می‌گیرد. .PP برای هر نماد، \fBnm\fR موارد زیر را نمایش می‌دهد: .IP \(bu 4 مقدار نماد، در مبنای عددیِ انتخاب‌شده توسط گزینه‌ها (به زیر مراجعه کنید)، یا به صورت پیش‌فرض در مبنای شانزده (هگزادسیمال). .IP \(bu 4 نوع نماد. حداقل انواع زیر استفاده می‌شوند؛ انواع دیگری نیز بسته به قالب فایل شیء ممکن است وجود داشته باشند. اگر حرف کوچک باشد، نماد معمولاً محلی (local) است؛ اگر حرف بزرگ باشد، نماد سراسری یا خارجی (global/external) است. با این حال چند نماد با حروف کوچک وجود دارند که برای نمادهای سراسری خاص نمایش داده می‌شوند (\f(CW\*(C`u\*(C'\fR، \f(CW\*(C`v\*(C'\fR و \f(CW\*(C`w\*(C'\fR). .RS 4 .ie n .IP """A""" 4 .el .IP \f(CWA\fR 4 .IX Item "A" مقدار نماد مطلق (absolute) است و با پیوند زدن‌های بعدی تغییر نخواهد کرد. .ie n .IP """B""" 4 .el .IP \f(CWB\fR 4 .IX Item "B" .PD 0 .ie n .IP """b""" 4 .el .IP \f(CWb\fR 4 .IX Item "b" .PD نماد در بخش دادهٔ BSS قرار دارد. این بخش معمولاً شامل داده‌های مقداردهی‌نشده یا مقداردهی‌شده با صفر است، اگرچه رفتار دقیق آن به سیستم وابسته است. .ie n .IP """C""" 4 .el .IP \f(CWC\fR 4 .IX Item "C" .PD 0 .ie n .IP """c""" 4 .el .IP \f(CWc\fR 4 .IX Item "c" .PD نماد مشترک (common) است. نمادهای مشترک داده‌های مقداردهی‌نشده هستند. هنگام پیوند زدن، ممکن است چندین نماد مشترک با نام یکسان ظاهر شوند. اگر نماد در هر جایی تعریف شده باشد، با نمادهای مشترک به عنوان مراجع تعریف‌نشده برخورد می‌شود. نویسه کوچک \fIc\fR زمانی استفاده می‌شود که نماد در یک بخش ویژه برای داده‌های مشترک کوچک (small commons) باشد. .ie n .IP """D""" 4 .el .IP \f(CWD\fR 4 .IX Item "D" .PD 0 .ie n .IP """d""" 4 .el .IP \f(CWd\fR 4 .IX Item "d" .PD نماد در بخش داده‌های مقداردهی‌شده (initialized data) قرار دارد. .ie n .IP """G""" 4 .el .IP \f(CWG\fR 4 .IX Item "G" .PD 0 .ie n .IP """g""" 4 .el .IP \f(CWg\fR 4 .IX Item "g" .PD نماد در یک بخش داده‌های مقداردهی‌شده برای اشیاء کوچک (small objects) قرار دارد. برخی از قالب‌های فایل شیء دسترسی کارآمدتری را برای اشیاء داده‌ای کوچک فراهم می‌کنند، مانند یک متغیر سراسری int در مقایسه با یک آرایه سراسری بزرگ. .ie n .IP """i""" 4 .el .IP \f(CWi\fR 4 .IX Item "i" برای فایل‌های با قالب PE، این نشان می‌دهد که نماد در بخشی مخصوص پیاده‌سازی DLLها قرار دارد. .Sp برای فایل‌های با قالب ELF، این نشان می‌دهد که نماد یک تابع غیرمستقیم (indirect function) است. این یک گسترش گنو (GNU extension) برای مجموعه استاندارد انواع نماد ELF است. این مورد نشان‌دهنده نمادی است که در صورت ارجاع توسط یک بازنشانی (relocation)، به آدرس آن ارزیابی نمی‌شود، بلکه باید در زمان اجرا فراخوانی گردد. سپس اجرای زمان اجرا مقداری را برمی‌گرداند که در بازنشانی استفاده خواهد شد. .Sp نکته \- نمایش واقعی نمادها برای نمادهای غیرمستقیم گنو توسط گزینه خط فرمان \fB\-\-ifunc\-chars\fR کنترل می‌شود. اگر این گزینه مشخص شده باشد، اولین نویسه در رشته برای نمادهای تابع غیرمستقیم سراسری استفاده خواهد شد. اگر رشته حاوی نویسه دومی باشد، از آن برای نمادهای تابع غیرمستقیم محلی استفاده می‌شود. .ie n .IP """I""" 4 .el .IP \f(CWI\fR 4 .IX Item "I" نماد یک ارجاع غیرمستقیم به نماد دیگری است. .ie n .IP """N""" 4 .el .IP \f(CWN\fR 4 .IX Item "N" نماد یک نماد اشکال‌زدایی (debugging symbol) است. .ie n .IP """n""" 4 .el .IP \f(CWn\fR 4 .IX Item "n" نماد در یک بخش فقط‌خواندنیِ غیرداده‌ای، غیرکدی و غیراشکال‌زدایی قرار دارد. .ie n .IP """p""" 4 .el .IP \f(CWp\fR 4 .IX Item "p" نماد در یک بخش بازپیچی پشته (stack unwind) قرار دارد. .ie n .IP """R""" 4 .el .IP \f(CWR\fR 4 .IX Item "R" .PD 0 .ie n .IP """r""" 4 .el .IP \f(CWr\fR 4 .IX Item "r" .PD نماد در بخش داده‌های فقط‌خواندنی (read-only data) قرار دارد. .ie n .IP """S""" 4 .el .IP \f(CWS\fR 4 .IX Item "S" .PD 0 .ie n .IP """s""" 4 .el .IP \f(CWs\fR 4 .IX Item "s" .PD نماد در یک بخش داده‌های مقداردهی‌نشده یا مقداردهی‌شده با صفر برای اشیاء کوچک قرار دارد. .ie n .IP """T""" 4 .el .IP \f(CWT\fR 4 .IX Item "T" .PD 0 .ie n .IP """t""" 4 .el .IP \f(CWt\fR 4 .IX Item "t" .PD نماد در بخش متن یا کد (text) قرار دارد. .ie n .IP """U""" 4 .el .IP \f(CWU\fR 4 .IX Item "U" نماد تعریف‌نشده (undefined) است. .ie n .IP """u""" 4 .el .IP \f(CWu\fR 4 .IX Item "u" نماد یک نماد سراسری یکتا (unique global symbol) است. این یک گسترش گنو بر مجموعه استاندارد پیوندهای نماد ELF است. برای چنین نمادی، پیونددهنده پویا اطمینان حاصل خواهد کرد که در کل فرایند فقط یک نماد با این نام و نوع مورد استفاده قرار می‌گیرد. .ie n .IP """V""" 4 .el .IP \f(CWV\fR 4 .IX Item "V" .PD 0 .ie n .IP """v""" 4 .el .IP \f(CWv\fR 4 .IX Item "v" .PD نماد یک شیء ضعیف (weak object) است. هنگامی که یک نمادِ تعریف‌شدهٔ ضعیف با یک نمادِ تعریف‌شدهٔ عادی پیوند داده می‌شود، نماد عادی بدون هیچ خطایی استفاده می‌شود. هنگامی که یک نمادِ تعریف‌نشدهٔ ضعیف پیوند داده شود و نماد تعریف نشده باشد، مقدار نماد ضعیف بدون هیچ خطایی برابر صفر می‌شود. در برخی سیستم‌ها، حرف بزرگ نشان می‌دهد که یک مقدار پیش‌فرض مشخص شده است. .ie n .IP """W""" 4 .el .IP \f(CWW\fR 4 .IX Item "W" .PD 0 .ie n .IP """w""" 4 .el .IP \f(CWw\fR 4 .IX Item "w" .PD نماد یک نماد ضعیف است که به‌طور خاص به عنوان نماد شیء ضعیف برچسب‌گذاری نشده است. هنگامی که یک نمادِ تعریف‌شدهٔ ضعیف با یک نمادِ تعریف‌شدهٔ عادی پیوند داده می‌شود، نماد عادی بدون هیچ خطایی استفاده می‌شود. هنگامی که یک نمادِ تعریف‌نشدهٔ ضعیف پیوند داده شود و نماد تعریف نشده باشد، مقدار نماد بدون بروز خطا به شیوه‌ای وابسته به سیستم تعیین می‌گردد. در برخی سیستم‌ها، حرف بزرگ نشان می‌دهد که یک مقدار پیش‌فرض مشخص شده است. .ie n .IP """\-""" 4 .el .IP \f(CW\-\fR 4 .IX Item "-" نماد یک نماد stabs در یک فایل شیء a.out است. در این حالت، مقادیر بعدی چاپ‌شده شامل فیلد other در stabs، فیلد desc در stabs، و نوع stab هستند. نمادهای stabs برای نگهداری اطلاعات اشکال‌زدایی به کار می‌روند. .ie n .IP """?""" 4 .el .IP \f(CW?\fR 4 .IX Item "?" نوع نماد ناشناخته یا مختص قالب فایل شیء است. .RE .RS 4 .RE .IP \(bu 4 نام نماد. اگر نمادی دارای اطلاعات نسخه مرتبط باشد، اطلاعات نسخه نیز نمایش داده می‌شود. اگر نماد دارای نسخه، تعریف‌نشده یا از پیونددهنده پنهان باشد، رشته نسخه به‌صورت پسوندی برای نام نماد نمایش می‌یابد که پیش از آن یک نویسه @ قرار دارد؛ برای مثال \&\fBfoo@VER_1\fR. اگر نسخه، نسخه پیش‌فرض مورد استفاده برای حل ارجاعات بدون نسخه به این نماد باشد، به‌صورت پسوندی نمایش داده می‌شود که پیش از آن دو نویسه @ قرار دارد؛ برای مثال \fBfoo@@VER_2\fR. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" شکل‌های کوتاه و بلند گزینه‌ها که در اینجا به‌صورت جایگزین نشان داده شده‌اند، معادل یکدیگرند. .IP \fB\-A\fR 4 .IX Item "-A" .PD 0 .IP \fB\-o\fR 4 .IX Item "-o" .IP \fB\-\-print\-file\-name\fR 4 .IX Item "--print-file-name" .PD نام فایل ورودی (یا عضو آرشیو) را که نماد در آن پیدا شده است، پیش از هر نماد درج می‌کند، به جای اینکه فایل ورودی تنها یک بار، پیش از تمام نمادهایش مشخص شود. .IP \fB\-a\fR 4 .IX Item "-a" .PD 0 .IP \fB\-\-debug\-syms\fR 4 .IX Item "--debug-syms" .PD نمایش تمامی نمادها، حتی نمادهای ویژهٔ اشکال‌زدا؛ به‌طور معمول این نمادها فهرست نمی‌شوند. .IP \fB\-B\fR 4 .IX Item "-B" همانند \fB\-\-format=bsd\fR (جهت سازگاری با \fBnm\fR در MIPS). .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++ را خوانا می‌کند. کامپایلرهای مختلف شیوه‌های متفاوتی برای دستکاری نام دارند. آرگومان اختیاری شیوه رمزگشایی را می‌توان برای انتخاب شیوه مناسب برای کامپایلر شما به کار برد. .IP \fB\-\-no\-demangle\fR 4 .IX Item "--no-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 محدودیت میزان بازگشت انجام‌شده هنگام رمزگشایی رشته‌ها را فعال یا غیرفعال می‌کند. از آنجا که قالب‌های دستکاری نام امکان سطوح بازگشت نامحدود را می‌دهند، این امکان وجود دارد که رشته‌هایی ایجاد شوند که رمزگشایی آن‌ها تمام فضای پشتهٔ موجود در ماشین میزبان را مصرف کرده و باعث بروز خطای حافظه شود. این محدودیت با محدود کردن بازگشت به ۲۰۴۸ سطح تودرتو، تلاش می‌کند از رخ دادن این اتفاق جلوگیری کند. .Sp حالت پیش‌فرض فعال بودن این محدودیت است، اما غیرفعال کردن آن ممکن است برای رمزگشایی نام‌های واقعاً پیچیده لازم باشد. با این حال توجه داشته باشید که در صورت غیرفعال بودن محدودیت بازگشت، اتمام فضای پشته محتمل است و هرگونه گزارش باگ در مورد چنین رویدادی رد خواهد شد. .IP \fB\-D\fR 4 .IX Item "-D" .PD 0 .IP \fB\-\-dynamic\fR 4 .IX Item "--dynamic" .PD نمایش نمادهای پویا به جای نمادهای معمولی. این گزینه تنها برای اشیاء پویا، مانند انواع خاصی از کتابخانه‌های اشتراکی، معنادار است. .IP "\fB\-f\fR \fIformat\fR" 4 .IX Item "-f format" .PD 0 .IP \fB\-\-format=\fR\fIformat\fR 4 .IX Item "--format=format" .PD استفاده از قالب خروجی \fIformat\fR که می‌تواند \f(CW\*(C`bsd\*(C'\fR، \&\f(CW\*(C`sysv\*(C'\fR، \f(CW\*(C`posix\*(C'\fR یا \f(CW\*(C`just\-symbols\*(C'\fR باشد. پیش‌فرض \f(CW\*(C`bsd\*(C'\fR است. تنها نویسه اول \fIformat\fR دارای اهمیت است؛ این نویسه می‌تواند بزرگ یا کوچک باشد. .IP \fB\-g\fR 4 .IX Item "-g" .PD 0 .IP \fB\-\-extern\-only\fR 4 .IX Item "--extern-only" .PD تنها نمادهای خارجی نمایش داده شوند. .IP \fB\-h\fR 4 .IX Item "-h" .PD 0 .IP \fB\-\-help\fR 4 .IX Item "--help" .PD نمایش خلاصه‌ای از گزینه‌های \fBnm\fR و خروج. .IP \fB\-\-ifunc\-chars=\fR\fICHARS\fR 4 .IX Item "--ifunc-chars=CHARS" هنگام نمایش نمادهای توابع غیرمستقیم گنو، دستور \fBnm\fR به‌طور پیش‌فرض از نویسهٔ \f(CW\*(C`i\*(C'\fR هم برای توابع غیرمستقیم محلی و هم سراسری استفاده می‌کند. گزینهٔ \fB\-\-ifunc\-chars\fR به کاربر اجازه می‌دهد رشته‌ای حاوی یک یا دو نویسه را مشخص کند. نویسه نخست برای نمادهای تابع غیرمستقیم سراسری استفاده خواهد شد و نویسه دوم، در صورت وجود، برای نمادهای تابع غیرمستقیم محلی به کار می‌رود. .IP \fB\-j\fR 4 .IX Item "-j" همانند \fB\-\-format=just\-symbols\fR. .IP \fB\-l\fR 4 .IX Item "-l" .PD 0 .IP \fB\-\-line\-numbers\fR 4 .IX Item "--line-numbers" .PD برای هر نماد، با استفاده از اطلاعات اشکال‌زدایی تلاش شود نام فایل و شماره خط پیدا شود. برای یک نماد تعریف‌شده، به دنبال شماره خطِ آدرسِ نماد می‌گردد. برای یک نماد تعریف‌نشده، به دنبال شماره خطِ مدخل بازنشانی مرتبط با نماد می‌گردد. اگر اطلاعات شماره خط پیدا شود، پس از دیگر اطلاعات نماد چاپ می‌شود. .IP \fB\-\-inlines\fR 4 .IX Item "--inlines" هنگامی که گزینهٔ \fB\-l\fR فعال باشد، اگر آدرس متعلق به تابعی باشد که درون‌خطی شده است، این گزینه سبب می‌شود اطلاعات کد مبدأ برای تمامی حوزه‌های دربرگیرنده تا نخستین تابعِ غیردرون‌خطی نیز چاپ شود. برای مثال، اگر \f(CW\*(C`main\*(C'\fR تابع \f(CW\*(C`callee1\*(C'\fR را درون‌خطی کند و آن نیز \f(CW\*(C`callee2\*(C'\fR را درون‌خطی کرده باشد، و آدرس متعلق به \f(CW\*(C`callee2\*(C'\fR باشد، اطلاعات کد مبدأ برای \f(CW\*(C`callee1\*(C'\fR و \f(CW\*(C`main\*(C'\fR نیز چاپ خواهد شد. .IP \fB\-n\fR 4 .IX Item "-n" .PD 0 .IP \fB\-v\fR 4 .IX Item "-v" .IP \fB\-\-numeric\-sort\fR 4 .IX Item "--numeric-sort" .PD مرتب‌سازی عددی نمادها بر اساس آدرس‌هایشان، به جای مرتب‌سازی الفبایی بر اساس نامشان. .IP \fB\-p\fR 4 .IX Item "-p" .PD 0 .IP \fB\-\-no\-sort\fR 4 .IX Item "--no-sort" .PD نمادها را با هیچ ترتیبی مرتب نکن؛ آن‌ها را به همان ترتیبی که مواجه می‌شوی چاپ کن. .IP \fB\-P\fR 4 .IX Item "-P" .PD 0 .IP \fB\-\-portability\fR 4 .IX Item "--portability" .PD استفاده از قالب خروجی استاندارد POSIX.2 به جای قالب پیش‌فرض. معادل \fB\-f posix\fR. .IP \fB\-r\fR 4 .IX Item "-r" .PD 0 .IP \fB\-\-reverse\-sort\fR 4 .IX Item "--reverse-sort" .PD معکوس کردن ترتیب مرتب‌سازی (چه عددی باشد چه الفبایی)؛ تا آخرین مورد، نخست چاپ شود. .IP \fB\-S\fR 4 .IX Item "-S" .PD 0 .IP \fB\-\-print\-size\fR 4 .IX Item "--print-size" .PD چاپ هر دو مقدار و اندازه نمادهای تعریف‌شده برای شیوه خروجی \f(CW\*(C`bsd\*(C'\fR. این گزینه برای قالب‌های شیئی که اندازه نمادها را ثبت نمی‌کنند هیچ اثری ندارد، مگر اینکه \fB\-\-size\-sort\fR نیز استفاده شود که در این حالت اندازه‌ای محاسبه‌شده نمایش می‌یابد. .IP \fB\-s\fR 4 .IX Item "-s" .PD 0 .IP \fB\-\-print\-armap\fR 4 .IX Item "--print-armap" .PD هنگام فهرست کردن نمادها از اعضای یک آرشیو، نمایه نیز گنجانده شود: یک نگاشت (ذخیره‌شده در آرشیو توسط \fBar\fR یا \fBranlib\fR) از اینکه کدام پودمان‌ها شامل تعاریف کدام نام‌ها هستند. .IP "\fB\-t\fR \fIradix\fR" 4 .IX Item "-t radix" .PD 0 .IP \fB\-\-radix=\fR\fIradix\fR 4 .IX Item "--radix=radix" .PD استفاده از \fIradix\fR به عنوان مبنای عددی برای چاپ مقادیر نماد. باید برای ده‌دهی \fBd\fR، برای هشت‌هشتی \fBo\fR، یا برای شانزده‌شانزدهی \fBx\fR باشد. .IP \fB\-u\fR 4 .IX Item "-u" .PD 0 .IP \fB\-\-undefined\-only\fR 4 .IX Item "--undefined-only" .PD تنها نمادهای تعریف‌نشده (نمادهایی که نسبت به هر فایل شیء بیرونی هستند) نمایش داده شوند. به‌طور پیش‌فرض، هم نمادهای تعریف‌شده و هم تعریف‌نشده نمایش داده می‌شوند. .IP \fB\-U\fR 4 .IX Item "-U" .PD 0 .IP \fB\-\-defined\-only\fR 4 .IX Item "--defined-only" .PD تنها نمادهای تعریف‌شده برای هر فایل شیء نمایش داده شوند. به‌طور پیش‌فرض، هم نمادهای تعریف‌شده و هم تعریف‌نشده نمایش داده می‌شوند. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD نمایش شماره نسخهٔ \fBnm\fR و خروج. .IP \fB\-X\fR 4 .IX Item "-X" این گزینه برای سازگاری با نسخهٔ AIX برنامهٔ \&\fBnm\fR نادیده گرفته می‌شود. این گزینه یک پارامتر می‌پذیرد که باید رشتهٔ \&\fB32_64\fR باشد. حالت پیش‌فرض \fBnm\fR در AIX با \&\fB\-X 32\fR مطابقت دارد که توسط GNU \fBnm\fR پشتیبانی نمی‌شود. .IP "\fB\-\-plugin\fR \fIname\fR" 4 .IX Item "--plugin name" بارگذاری افزونه‌ای به نام \fIname\fR جهت افزودن پشتیبانی از انواع هدف‌های اضافی. این گزینه فقط در صورتی در دسترس است که زنجیره ابزار با پشتیبانی از افزونه ساخته شده باشد. .Sp اگر \fB\-\-plugin\fR مشخص نشود، اما پشتیبانی از افزونه فعال باشد، \&\fBnm\fR فایل‌های موجود در دایرکتوری \&\fI${libdir}/bfd\-plugins\fR را به ترتیب الفبایی پیمایش کرده و از نخستین افزونه‌ای که شیء مورد نظر را بپذیرد استفاده می‌کند. .Sp لطفاً توجه داشته باشید که این پوشهٔ جستجوی افزونه، همان پوشهٔ استفاده‌شده توسط گزینهٔ \&\fB\-plugin\fR در \fBld\fR \fIنیست\fR. برای اینکه \fBnm\fR بتواند از افزونهٔ پیونددهنده استفاده کند، باید آن را در پوشهٔ \&\fI${libdir}/bfd\-plugins\fR کپی کرد. برای کامپایل‌های مبتنی بر GCC، نام افزونه پیونددهنده \fIliblto_plugin.so.0.0.0\fR است. برای کامپایل‌های مبتنی بر Clang، نام آن \fILLVMgold.so\fR است. افزونهٔ GCC همواره با نسخه‌های پیشین سازگار به عقب است، بنابراین تنها کپی کردن جدیدترین نسخه کفایت می‌کند. .IP \fB\-\-size\-sort\fR 4 .IX Item "--size-sort" مرتب‌سازی نمادها بر اساس اندازه. برای اشیاء ELF، اندازهٔ نمادها از ELF خوانده می‌شود؛ برای سایر انواع اشیاء، اندازهٔ نمادها از تفاوت بین مقدار نماد و مقدار نماد بعدی با مقدار بزرگ‌تر محاسبه می‌گردد. اگر از قالب خروجی \f(CW\*(C`bsd\*(C'\fR استفاده شود، به جای مقدار، اندازهٔ نماد چاپ می‌شود و برای چاپ هم‌زمان اندازه و مقدار، باید از \&\fB\-S\fR استفاده شود. .Sp توجه \- این گزینه در صورت فعال بودن \fB\-\-undefined\-only\fR کار نمی‌کند، زیرا نمادهای تعریف‌نشده اندازه‌ای ندارند. .IP \fB\-\-special\-syms\fR 4 .IX Item "--special-syms" نمایش نمادهایی که دارای معنای ویژه‌ای وابسته به هدف هستند. این نمادها معمولاً توسط هدف برای برخی پردازش‌های ویژه به کار می‌روند و حضورشان در فهرست نمادهای عادی معمولاً مفید نیست. برای نمونه، در هدف‌های ARM این گزینه نمادهای نگاشت را که برای علامت‌گذاری گذار بین کد ARM، کد THUMB و داده به کار می‌روند، نادیده می‌گیرد. .IP \fB\-\-synthetic\fR 4 .IX Item "--synthetic" گنجاندن نمادهای ساختگی در خروجی. این‌ها نمادهای ویژه‌ای هستند که توسط پیونددهنده برای مقاصد گوناگون ساخته شده‌اند. آن‌ها به‌طور پیش‌فرض نمایش داده نمی‌شوند، زیرا بخشی از کد منبع اصلی باینری نیستند. .IP \fB\-\-unicode=\fR\fI[default|invalid|locale|escape|hex|highlight]\fR 4 .IX Item "--unicode=[default|invalid|locale|escape|hex|highlight]" نحوهٔ نمایش نویسه‌های چندبایتی کُدگذاری‌شده به صورت UTF\-8 را در رشته‌ها کنترل می‌کند. حالت پیش‌فرض (\fB\-\-unicode=default\fR) رفتار خاصی با آن‌ها ندارد. گزینهٔ \&\fB\-\-unicode=locale\fR این توالی را بر اساس لوکال کنونی نمایش می‌دهد که ممکن است از آن‌ها پشتیبانی کند یا نکند. گزینه‌های \&\fB\-\-unicode=hex\fR و \fB\-\-unicode=invalid\fR آن‌ها را به صورت توالی‌های بایتی هگزادسیمال محصور در قلاب‌های زاویه‌دار یا آکولادها نمایش می‌دهند. .Sp گزینهٔ \fB\-\-unicode=escape\fR آن‌ها را به صورت توالی‌های گریز (\fI\euxxxx\fR) نمایش می‌دهد و گزینهٔ \fB\-\-unicode=highlight\fR آن‌ها را به صورت توالی‌های گریز برجسته‌شده با رنگ قرمز (در صورت پشتیبانی دستگاه خروجی) نمایش می‌دهد. رنگ‌آمیزی با هدف جلب توجه به وجود توالی‌های یونیکد در جاهایی است که ممکن است انتظارشان نرود. .IP \fB\-W\fR 4 .IX Item "-W" .PD 0 .IP \fB\-\-no\-weak\fR 4 .IX Item "--no-weak" .PD عدم نمایش نمادهای ضعیف. .IP \fB\-\-with\-symbol\-versions\fR 4 .IX Item "--with-symbol-versions" .PD 0 .IP \fB\-\-without\-symbol\-versions\fR 4 .IX Item "--without-symbol-versions" .PD فعال یا غیرفعال کردن نمایش اطلاعات نسخهٔ نماد. رشتهٔ نسخه به صورت پسوندی برای نام نماد نمایش داده می‌شود که پیش از آن یک نویسهٔ @ قرار می‌گیرد؛ برای نمونه \fBfoo@VER_1\fR. اگر نسخه، نسخهٔ پیش‌فرضی باشد که هنگام حل ارجاعات بدون نسخه به نماد استفاده می‌شود، به صورت پسوندی که قبل از آن دو نویسهٔ @ آمده است نمایش می‌یابد؛ مانند \fBfoo@@VER_2\fR. به‌طور پیش‌فرض، اطلاعات نسخهٔ نماد نمایش داده می‌شود. .IP \fB\-\-target=\fR\fIbfdname\fR 4 .IX Item "--target=bfdname" مشخص کردن یک قالب کد شیء به غیر از قالب پیش‌فرض سیستم شما. .IP \fB@\fR\fIfile\fR 4 .IX Item "@file" خواندن گزینه‌های خط فرمان از \fIfile\fR. گزینه‌های خوانده‌شده در محل گزینهٔ اصلی @\fIfile\fR جایگزین می‌شوند. اگر \fIfile\fR وجود نداشته باشد یا قابل خواندن نباشد، با این گزینه به صورت تحت‌اللفظی رفتار شده و حذف نخواهد شد. .Sp گزینه‌ها در \fIfile\fR با نویسهٔ فاصله جدا می‌شوند. یک نویسهٔ فاصله می‌تواند با قرار دادن کل گزینه درون علامت نقل‌قول تکی یا جفتی، در یک گزینه گنجانده شود. هر نویسه‌ای (شامل بک‌اسلش) را می‌توان با پیشوند کردن یک بک‌اسلش به آن نویسه در گزینه گنجاند. خود \fIfile\fR می‌تواند شامل گزینه‌های @\fIfile\fR دیگری نیز باشد؛ هر یک از این گزینه‌ها به‌صورت بازگشتی پردازش خواهند شد. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBar\fR\|(1)، \fBobjdump\fR\|(1)، \fBranlib\fR\|(1) و مدخل‌های Info برای \fIbinutils\fR. .SH "حق نشر (COPYRIGHT)" .IX Header "COPYRIGHT" Copyright (c) 1991\-2026 Free Software Foundation, Inc. .PP اجازهٔ کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخهٔ متأخرتر منتشرشده توسط بنیاد نرم‌افزار آزاد اعطا می‌شود؛ بدون بخش‌های ناوردا، بدون متون روی جلد، و بدون متون پشت جلد. نسخه‌ای از این مجوز در بخشی با عنوان «GNU Free Documentation License» گنجانده شده است.