.\" -*- 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 "DLLTOOL 1" .TH DLLTOOL 1 2026-07-30 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)" avr-dlltool \- ایجاد پرونده‌های لازم برای ساخت و استفاده از DLLها .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" dlltool [\fB\-d\fR|\fB\-\-input\-def\fR \fIdef\-file\-name\fR] [\fB\-b\fR|\fB\-\-base\-file\fR \fIbase\-file\-name\fR] [\fB\-e\fR|\fB\-\-output\-exp\fR \fIexports\-file\-name\fR] [\fB\-z\fR|\fB\-\-output\-def\fR \fIdef\-file\-name\fR] [\fB\-l\fR|\fB\-\-output\-lib\fR \fIlibrary\-file\-name\fR] [\fB\-y\fR|\fB\-\-output\-delaylib\fR \fIlibrary\-file\-name\fR] [\fB\-\-export\-all\-symbols\fR] [\fB\-\-no\-export\-all\-symbols\fR] [\fB\-\-exclude\-symbols\fR \fIlist\fR] [\fB\-\-no\-default\-excludes\fR] [\fB\-S\fR|\fB\-\-as\fR \fIpath\-to\-assembler\fR] [\fB\-f\fR|\fB\-\-as\-flags\fR \fIoptions\fR] [\fB\-D\fR|\fB\-\-dllname\fR \fIname\fR] [\fB\-m\fR|\fB\-\-machine\fR \fImachine\fR] [\fB\-a\fR|\fB\-\-add\-indirect\fR] [\fB\-U\fR|\fB\-\-add\-underscore\fR] [\fB\-\-add\-stdcall\-underscore\fR] [\fB\-k\fR|\fB\-\-kill\-at\fR] [\fB\-A\fR|\fB\-\-add\-stdcall\-alias\fR] [\fB\-p\fR|\fB\-\-ext\-prefix\-alias\fR \fIprefix\fR] [\fB\-x\fR|\fB\-\-no\-idata4\fR] [\fB\-c\fR|\fB\-\-no\-idata5\fR] [\fB\-\-use\-nul\-prefixed\-import\-tables\fR] [\fB\-I\fR|\fB\-\-identify\fR \fIlibrary\-file\-name\fR] [\fB\-\-identify\-strict\fR] [\fB\-i\fR|\fB\-\-interwork\fR] [\fB\-n\fR|\fB\-\-nodelete\fR] [\fB\-t\fR|\fB\-\-temp\-prefix\fR \fIprefix\fR] [\fB\-v\fR|\fB\-\-verbose\fR] [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] [\fB\-\-no\-leading\-underscore\fR] [\fB\-\-leading\-underscore\fR] [\fB\-\-deterministic\-libraries\fR] [\fB\-\-non\-deterministic\-libraries\fR] [object\-file ...] .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" دستور \&\fBdlltool\fR ورودی‌های خود را می‌خواند که می‌توانند از طریق گزینه‌های \fB\-d\fR و \fB\-b\fR و همچنین پرونده‌های شیء (object files) مشخص‌شده در خط فرمان دریافت شوند. سپس این ورودی‌ها را پردازش کرده و در صورتی که گزینه \fB\-e\fR مشخص شده باشد یک پرونده صادرات (exports file) ایجاد می‌کند. اگر گزینه \fB\-l\fR مشخص شده باشد یک پرونده کتابخانه ایجاد می‌نماید و اگر گزینه \fB\-z\fR مشخص شده باشد یک پرونده def تولید می‌کند. هر یک یا تمامی گزینه‌های \fB\-e\fR، \fB\-l\fR و \fB\-z\fR می‌توانند در یک بار اجرای dlltool حضور داشته باشند. .PP هنگام ساخت یک DLL، علاوه بر کد منبع DLL، وجود سه پرونده دیگر نیز ضروری است. ابزار \fBdlltool\fR می‌تواند در ایجاد این پرونده‌ها کمک کند. .PP پرونده نخست یک پرونده \fI.def\fR است که مشخص می‌کند کدام توابع از DLL صادر می‌شوند، DLL چه توابعی را وارد می‌کند و مواردی از این قبیل. این یک پرونده متنی است و می‌توان آن را به صورت دستی ایجاد کرد، یا می‌توان از \fBdlltool\fR با گزینه \fB\-z\fR برای ساخت آن استفاده نمود. در این حالت، \fBdlltool\fR پرونده‌های شیء مشخص‌شده در خط فرمان را پویش کرده و توابعی را که به طور ویژه به عنوان صادرشونده علامت‌گذاری شده‌اند جستجو می‌کند و مدخل‌هایی برای آن‌ها در پرونده \fI.def\fR تولیدی قرار می‌دهد. .PP برای اینکه تابعی به عنوان صادرشونده از یک DLL نشانه‌گذاری شود، باید یک مدخل \fB\-export:\fR در بخش \fB.drectve\fR پرونده شیء داشته باشد. در زبان C می‌توان این کار را با استفاده از عملگر \&\fBasm()\fR انجام داد: .PP .Vb 2 \& asm (".section .drectve"); \& asm (".ascii \e"\-export:my_func\e""); \& \& int my_func (void) { ... } .Ve .PP پرونده دوم مورد نیاز برای ساخت DLL، پرونده صادرات (exports file) است. این پرونده با پرونده‌های شیء تشکیل‌دهنده بدنه اصلی DLL پیوند می‌یابد و رابط میان DLL و دنیای خارج را مدیریت می‌کند. این یک پرونده باینری است و می‌توان آن را با دادن گزینه \fB\-e\fR به \&\fBdlltool\fR هنگام ایجاد یا خواندن پرونده \fI.def\fR تولید کرد. .PP پرونده سوم مورد نیاز برای ساخت DLL، پرونده کتابخانه‌ای است که برنامه‌ها برای دسترسی به توابع موجود در DLL با آن پیوند می‌خورند (یک «کتابخانه واردات» یا import library). این پرونده را می‌توان با ارائه گزینه \fB\-l\fR به dlltool در هنگام ساخت یا خواندن پرونده \fI.def\fR ایجاد کرد. .PP اگر گزینه \fB\-y\fR مشخص شود، dlltool یک کتابخانه واردات با تاخیر (delay\-import library) تولید می‌کند که می‌تواند به جای کتابخانه واردات معمول استفاده شود تا به برنامه اجازه دهد تنها پس از اولین فراخوانی یک تابع واردشده، پیوند با DLL را برقرار سازد. برنامه اجرایی حاصل باید با کتابخانه ایستا delayimp حاوی _\|\fB_delayLoadHelper2()\fR پیوند داده شود که به نوبه خود LoadLibraryA و GetProcAddress را از kernel32 وارد می‌کند. .PP ابزار \&\fBdlltool\fR پرونده کتابخانه را مستقیماً می‌سازد، اما پرونده صادرات را با ایجاد پرونده‌های موقت حاوی دستورات اسمبلی و سپس اسمبل کردن آن‌ها ایجاد می‌کند. گزینه خط فرمان \fB\-S\fR می‌تواند برای مشخص کردن مسیر اسمبلری که dlltool استفاده خواهد کرد به کار رود و گزینه \fB\-f\fR می‌تواند برای ارسال فلگ‌های مشخص به آن اسمبلر استفاده شود. گزینه \fB\-n\fR می‌تواند برای جلوگیری از حذف این پرونده‌های موقت اسمبلی پس از اتمام کار dlltool به کار رود، و در صورتی که \fB\-n\fR دو بار مشخص شود، از حذف پرونده‌های موقت شیء که برای ساخت کتابخانه استفاده شده‌اند نیز جلوگیری خواهد کرد. .PP در اینجا نمونه‌ای از ساخت یک DLL از پرونده منبع \fBdll.c\fR و همچنین ساخت برنامه‌ای (از پرونده شیء به نام \fBprogram.o\fR) که از آن DLL استفاده می‌کند آورده شده است: .PP .Vb 4 \& gcc \-c dll.c \& dlltool \-e exports.o \-l dll.lib dll.o \& gcc dll.o exports.o \-o dll.dll \& gcc program.o dll.lib \-o program .Ve .PP همچنین می‌توان از \&\fBdlltool\fR برای پرس‌وجو از یک کتابخانه واردات موجود جهت تعیین نام DLL مرتبط با آن استفاده کرد. توضیحات گزینه \fB\-I\fR یا \fB\-\-identify\fR را ببینید. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" گزینه‌های خط فرمان دارای معانی زیر هستند: .IP "\fB\-d\fR \fIfilename\fR" 4 .IX Item "-d filename" .PD 0 .IP "\fB\-\-input\-def\fR \fIfilename\fR" 4 .IX Item "--input-def filename" .PD نام پرونده \fI.def\fR را جهت خواندن و پردازش مشخص می‌کند. .IP "\fB\-b\fR \fIfilename\fR" 4 .IX Item "-b filename" .PD 0 .IP "\fB\-\-base\-file\fR \fIfilename\fR" 4 .IX Item "--base-file filename" .PD نام پرونده پایه (base file) را جهت خواندن و پردازش مشخص می‌کند. محتویات این پرونده به بخش بازآرایی (relocation section) در پرونده صادرات تولیدشده توسط dlltool اضافه خواهد شد. .IP "\fB\-e\fR \fIfilename\fR" 4 .IX Item "-e filename" .PD 0 .IP "\fB\-\-output\-exp\fR \fIfilename\fR" 4 .IX Item "--output-exp filename" .PD نام پرونده صادراتی (exports file) تولیدی توسط dlltool را مشخص می‌کند. .IP "\fB\-z\fR \fIfilename\fR" 4 .IX Item "-z filename" .PD 0 .IP "\fB\-\-output\-def\fR \fIfilename\fR" 4 .IX Item "--output-def filename" .PD نام پرونده \fI.def\fR ایجادشده توسط dlltool را تعیین می‌کند. .IP "\fB\-l\fR \fIfilename\fR" 4 .IX Item "-l filename" .PD 0 .IP "\fB\-\-output\-lib\fR \fIfilename\fR" 4 .IX Item "--output-lib filename" .PD نام پرونده کتابخانه‌ای را که باید توسط dlltool ایجاد شود تعیین می‌کند. .IP "\fB\-y\fR \fIfilename\fR" 4 .IX Item "-y filename" .PD 0 .IP "\fB\-\-output\-delaylib\fR \fIfilename\fR" 4 .IX Item "--output-delaylib filename" .PD نام پرونده کتابخانه واردات با تاخیر را که باید توسط dlltool ایجاد شود مشخص می‌کند. .IP \fB\-\-deterministic\-libraries\fR 4 .IX Item "--deterministic-libraries" .PD 0 .IP \fB\-\-non\-deterministic\-libraries\fR 4 .IX Item "--non-deterministic-libraries" .PD هنگام ساخت کتابخانه‌های خروجی در پاسخ به گزینه‌های \fB\-\-output\-lib\fR یا \fB\-\-output\-delaylib\fR، برای مهرهای زمانی، شناسه‌های کاربری و شناسه‌های گروهی ایجادشده از مقدار صفر استفاده می‌کند (\fB\-\-deterministic\-libraries\fR) یا مهرهای زمانی و شناسه‌های کاربری و گروهی واقعی را به کار می‌گیرد (\fB\-\-non\-deterministic\-libraries\fR). .IP \fB\-\-export\-all\-symbols\fR 4 .IX Item "--export-all-symbols" تمام نمادهای عمومی و ضعیف (weak) تعریف‌شده در پرونده‌های شیء ورودی را به عنوان نمادهای صادراتی در نظر می‌گیرد. فهرست کوچکی از نمادها وجود دارد که به طور پیش‌فرض صادر نمی‌شوند؛ گزینه \fB\-\-no\-default\-excludes\fR را ببینید. می‌توانید با استفاده از گزینه \fB\-\-exclude\-symbols\fR نمادهایی را به این فهرست استثناها بیفزایید. .IP \fB\-\-no\-export\-all\-symbols\fR 4 .IX Item "--no-export-all-symbols" تنها نمادهایی را صادر می‌کند که به طور صریح در پرونده \fI.def\fR ورودی یا در بخش‌های \fB.drectve\fR پرونده‌های شیء ورودی فهرست شده‌اند. این رفتار پیش‌فرض برنامه است. بخش‌های \fB.drectve\fR توسط ویژگی‌های \fBdllexport\fR در کد منبع ایجاد می‌شوند. .IP "\fB\-\-exclude\-symbols\fR \fIlist\fR" 4 .IX Item "--exclude-symbols list" نمادهای موجود در \fIlist\fR را صادر نمی‌کند. این فهرست شامل نام نمادهایی است که با کاما یا دونقطه از هم جدا شده‌اند. نام نمادها نباید با خط زیر (underscore) شروع شود. این گزینه فقط زمانی معنا دارد که از \fB\-\-export\-all\-symbols\fR استفاده شده باشد. .IP \fB\-\-no\-default\-excludes\fR 4 .IX Item "--no-default-excludes" هنگامی که از \fB\-\-export\-all\-symbols\fR استفاده می‌شود، به طور پیش‌فرض از صدور برخی نمادهای ویژه خودداری می‌گردد. فهرست کنونی این نمادها شامل \fBDllMain@12\fR، \fBDllEntryPoint@0\fR و \fBimpure_ptr\fR است. با استفاده از گزینه \fB\-\-no\-default\-excludes\fR می‌توانید این نمادهای ویژه را نیز صادر کنید. این گزینه تنها زمانی معتبر است که از \fB\-\-export\-all\-symbols\fR استفاده شده باشد. .IP "\fB\-S\fR \fIpath\fR" 4 .IX Item "-S path" .PD 0 .IP "\fB\-\-as\fR \fIpath\fR" 4 .IX Item "--as path" .PD مسیر کامل به همراه نام پرونده اسمبلری را که باید برای ایجاد پرونده صادرات استفاده شود مشخص می‌کند. .IP "\fB\-f\fR \fIoptions\fR" 4 .IX Item "-f options" .PD 0 .IP "\fB\-\-as\-flags\fR \fIoptions\fR" 4 .IX Item "--as-flags options" .PD گزینه‌های خط فرمان مشخصی را تعیین می‌کند که هنگام ساخت پرونده صادرات به اسمبلر ارسال خواهند شد. این گزینه حتی اگر گزینه \fB\-S\fR استفاده نشود نیز کار می‌کند. این گزینه تنها یک آرگومان می‌پذیرد و در صورت تکرار در خط فرمان، مقادیر بعدی جایگزین مقادیر قبلی می‌شوند؛ بنابراین برای ارسال چند گزینه به اسمبلر، آن‌ها را در گیومه دوتایی محصور کنید. .IP "\fB\-D\fR \fIname\fR" 4 .IX Item "-D name" .PD 0 .IP "\fB\-\-dll\-name\fR \fIname\fR" 4 .IX Item "--dll-name name" .PD نامی را مشخص می‌کند که در صورت استفاده از گزینه \fB\-e\fR، به عنوان نام DLL در پرونده \fI.def\fR ذخیره می‌شود. اگر این گزینه مشخص نشود، نام پرونده ارسال‌شده به گزینه \fB\-e\fR به عنوان نام DLL به کار می‌رود. .IP "\fB\-m\fR \fImachine\fR" 4 .IX Item "-m machine" .PD 0 .IP "\fB\-machine\fR \fImachine\fR" 4 .IX Item "-machine machine" .PD نوع ماشینی (معماری) را مشخص می‌کند که پرونده کتابخانه باید برای آن ساخته شود. ابزار \fBdlltool\fR دارای یک مقدار پیش‌فرض توکار است که به نحوه ساخت آن بستگی دارد، اما این گزینه می‌تواند آن را تغییر دهد. این ویژگی معمولاً تنها هنگام ایجاد DLL برای پردازنده ARM که محتویات آن با دستورالعمل‌های Thumb کدگذاری شده کاربرد دارد. .IP \fB\-a\fR 4 .IX Item "-a" .PD 0 .IP \fB\-\-add\-indirect\fR 4 .IX Item "--add-indirect" .PD مشخص می‌کند که هنگام ساخت پرونده صادرات توسط \fBdlltool\fR، بخشی اضافه شود که به توابع صادرشده اجازه می‌دهد بدون استفاده از کتابخانه واردات ارجاع داده شوند. .IP \fB\-U\fR 4 .IX Item "-U" .PD 0 .IP \fB\-\-add\-underscore\fR 4 .IX Item "--add-underscore" .PD مشخص می‌کند که هنگام ساخت پرونده صادرات توسط \fBdlltool\fR، یک خط زیر به ابتدای نام \fIتمامی\fR نمادهای صادرشده اضافه شود. .IP \fB\-\-no\-leading\-underscore\fR 4 .IX Item "--no-leading-underscore" .PD 0 .IP \fB\-\-leading\-underscore\fR 4 .IX Item "--leading-underscore" .PD مشخص می‌کند که آیا نمادهای استاندارد باید به داشتن پیشوند خط زیر مجبور شوند یا خیر. .IP \fB\-\-add\-stdcall\-underscore\fR 4 .IX Item "--add-stdcall-underscore" مشخص می‌کند که هنگام ساخت پرونده صادرات توسط \fBdlltool\fR، یک خط زیر به ابتدای نام توابع صادرشده \fIstdcall\fR افزوده شود. نام متغیرها و نام توابع غیر stdcall دست‌نخورده باقی می‌مانند. این گزینه هنگام ایجاد کتابخانه‌های واردات سازگار با GNU برای DLLهای ارائه‌شده توسط شخص ثالث که با ابزارهای MS\-Windows ساخته شده‌اند سودمند است. .IP \fB\-k\fR 4 .IX Item "-k" .PD 0 .IP \fB\-\-kill\-at\fR 4 .IX Item "--kill-at" .PD مشخص می‌کند که پسوندهای \fB@\fR از نام توابع stdcall که از DLL وارد می‌شوند حذف شوند. این گزینه هنگام ایجاد کتابخانه واردات برای یک DLL که توابع stdcall را بدون پسوند مرسوم \fB@\fR صادر می‌کند سودمند است. .Sp این تغییر نام نمادهای ارائه‌شده توسط کتابخانه واردات را برای برنامه‌های پیوندیافته با آن تغییر نمی‌دهد، بلکه صرفاً مدخل‌های موجود در جدول واردات (بخش idata.) را تغییر می‌دهد. .IP \fB\-A\fR 4 .IX Item "-A" .PD 0 .IP \fB\-\-add\-stdcall\-alias\fR 4 .IX Item "--add-stdcall-alias" .PD مشخص می‌کند که هنگام ساخت پرونده صادرات توسط \fBdlltool\fR، علاوه بر نمادهای دارای \fB@ \fR، نام‌های مستعار برای نمادهای stdcall بدون \fB@ \fR نیز اضافه شوند. .IP \fB\-p\fR 4 .IX Item "-p" .PD 0 .IP "\fB\-\-ext\-prefix\-alias\fR \fIprefix\fR" 4 .IX Item "--ext-prefix-alias prefix" .PD باعث می‌شود \fBdlltool\fR نام‌های مستعار خارجی برای تمامی واردات DLL با پیشوند مشخص‌شده بسازد. این نام‌های مستعار هم برای نمادهای خارجی و هم برای نمادهای وارداتی فاقد خط زیر آغازین ایجاد می‌شوند. .IP \fB\-x\fR 4 .IX Item "-x" .PD 0 .IP \fB\-\-no\-idata4\fR 4 .IX Item "--no-idata4" .PD مشخص می‌کند که هنگام ساخت پرونده‌های صادرات و کتابخانه توسط \fBdlltool\fR، بخش \f(CW\*(C`.idata4\*(C'\fR حذف شود. این گزینه برای سازگاری با برخی سیستم‌های عامل خاص است. .IP \fB\-\-use\-nul\-prefixed\-import\-tables\fR 4 .IX Item "--use-nul-prefixed-import-tables" مشخص می‌کند که هنگام ساخت پرونده‌های صادرات و کتابخانه توسط \fBdlltool\fR، بخش‌های \f(CW\*(C`.idata4\*(C'\fR و \f(CW\*(C`.idata5\*(C'\fR با یک عنصر صفر پیشوند شوند. این کار نحوه تولید کتابخانه‌های واردات قدیمی gnu توسط \f(CW\*(C`dlltool\*(C'\fR را شبیه‌سازی می‌کند. این گزینه به طور پیش‌فرض غیرفعال است. .IP \fB\-c\fR 4 .IX Item "-c" .PD 0 .IP \fB\-\-no\-idata5\fR 4 .IX Item "--no-idata5" .PD مشخص می‌کند که هنگام ساخت پرونده‌های صادرات و کتابخانه توسط \fBdlltool\fR، بخش \f(CW\*(C`.idata5\*(C'\fR حذف شود. این گزینه جهت سازگاری با برخی سیستم‌های عامل خاص است. .IP "\fB\-I\fR \fIfilename\fR" 4 .IX Item "-I filename" .PD 0 .IP "\fB\-\-identify\fR \fIfilename\fR" 4 .IX Item "--identify filename" .PD مشخص می‌کند که \fBdlltool\fR کتابخانه واردات مشخص‌شده توسط \fIfilename\fR را بررسی کرده و نام DLL(های) مرتبط را در \f(CW\*(C`stdout\*(C'\fR گزارش کند. این عملیات می‌تواند علاوه بر سایر عملیات‌های تعیین‌شده توسط سایر گزینه‌ها و آرگومان‌ها اجرا شود. در صورتی که کتابخانه واردات وجود نداشته باشد یا در واقع یک کتابخانه واردات نباشد، \fBdlltool\fR با شکست مواجه می‌شود. همچنین گزینه \fB\-\-identify\-strict\fR را ببینید. .IP \fB\-\-identify\-strict\fR 4 .IX Item "--identify-strict" رفتار گزینه \fB\-\-identify\fR را تغییر می‌دهد، به طوری که اگر \fIfilename\fR با بیش از یک DLL مرتبط باشد، خطا گزارش شود. .IP \fB\-i\fR 4 .IX Item "-i" .PD 0 .IP \fB\-\-interwork\fR 4 .IX Item "--interwork" .PD مشخص می‌کند که \fBdlltool\fR پرونده‌های شیء موجود در پرونده کتابخانه و پرونده صادرات تولیدی را به عنوان پشتیبانی‌کننده از تعامل متقابل میان کدهای ARM و Thumb علامت‌گذاری کند. .IP \fB\-n\fR 4 .IX Item "-n" .PD 0 .IP \fB\-\-nodelete\fR 4 .IX Item "--nodelete" .PD باعث می‌شود \fBdlltool\fR پرونده‌های موقت اسمبلی مورد استفاده برای ساخت پرونده صادرات را حفظ کند. در صورت تکرار این گزینه، dlltool پرونده‌های موقت شیء مورد استفاده برای ساخت پرونده کتابخانه را نیز حفظ خواهد کرد. .IP "\fB\-t\fR \fIprefix\fR" 4 .IX Item "-t prefix" .PD 0 .IP "\fB\-\-temp\-prefix\fR \fIprefix\fR" 4 .IX Item "--temp-prefix prefix" .PD باعث می‌شود \fBdlltool\fR هنگام ساخت نام پرونده‌های موقت اسمبلی و شیء از \fIprefix\fR استفاده کند. به طور پیش‌فرض، پیشوند پرونده‌های موقت از روی شناسه فرآیند (pid) تولید می‌شود. .IP \fB\-v\fR 4 .IX Item "-v" .PD 0 .IP \fB\-\-verbose\fR 4 .IX Item "--verbose" .PD باعث می‌شود dlltool عملیاتی را که انجام می‌دهد شرح دهد (حالت پرگویی). .IP \fB\-h\fR 4 .IX Item "-h" .PD 0 .IP \fB\-\-help\fR 4 .IX Item "--help" .PD فهرستی از گزینه‌های خط فرمان را نمایش داده و سپس خارج می‌شود. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD شماره نسخه dlltool را نمایش داده و سپس خارج می‌شود. .IP \fB@\fR\fIfile\fR 4 .IX Item "@file" گزینه‌های خط فرمان را از \fIfile\fR می‌خواند. گزینه‌های خوانده‌شده به جای گزینه اصلی \fB@\fR\fIfile\fR قرار می‌گیرند. اگر \fIfile\fR وجود نداشته باشد یا قابل خواندن نباشد، با گزینه به صورت لغوی رفتار شده و حذف نمی‌شود. .Sp گزینه‌ها در \fIfile\fR با فاصله‌های خالی از هم جدا می‌شوند. یک نویسه فاصله خالی را می‌توان با قرار دادن کل گزینه در گیومه تکی یا دوتایی گنجاند. هر نویسه‌ای (از جمله ممیز وارونه) را می‌توان با درج یک ممیز وارونه در ابتدای آن اضافه کرد. خود \fIfile\fR ممکن است حاوی گزینه‌های \fB@\fR\fIfile\fR دیگری باشد؛ چنین گزینه‌هایی به صورت بازگشتی پردازش خواهند شد. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" صفحات Info برای \fIbinutils\fR. .SH "حق نشر (COPYRIGHT)" .IX Header "COPYRIGHT" حق نشر (c) 1991\-2026 بنیاد نرم‌افزارهای آزاد (Free Software Foundation, Inc.) .PP اجازه رونوشت‌برداری، توزیع و/یا تغییر این سند تحت شرایط مجوز اسناد آزاد گنو (GNU Free Documentation License) نسخه 1.3 یا هر نسخه بالاتر منتشرشده توسط بنیاد نرم‌افزارهای آزاد اعطا می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد، و بدون متون پشت جلد. نسخه‌ای از این مجوز در بخش موسوم به "GNU Free Documentation License" گنجانده شده است.