.\" -*- 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 "STRIP 1" .TH STRIP 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)" ppc64le\-elf\-strip \- حذف نمادها و سایر داده‌ها از فایل‌های شیء .SH "خلاصه دستور (SYNOPSIS)" .IX Header "خلاصه دستور (SYNOPSIS)" strip [\fB\-F\fR \fIbfdname\fR |\fB\-\-target=\fR\fIbfdname\fR] [\fB\-I\fR \fIbfdname\fR |\fB\-\-input\-target=\fR\fIbfdname\fR] [\fB\-O\fR \fIbfdname\fR |\fB\-\-output\-target=\fR\fIbfdname\fR] [\fB\-s\fR|\fB\-\-strip\-all\fR] [\fB\-S\fR|\fB\-g\fR|\fB\-d\fR|\fB\-\-strip\-debug\fR] [\fB\-\-strip\-dwo\fR] [\fB\-K\fR \fIsymbolname\fR|\fB\-\-keep\-symbol=\fR\fIsymbolname\fR] [\fB\-M\fR|\fB\-\-merge\-notes\fR][\fB\-\-no\-merge\-notes\fR] [\fB\-N\fR \fIsymbolname\fR |\fB\-\-strip\-symbol=\fR\fIsymbolname\fR] [\fB\-w\fR|\fB\-\-wildcard\fR] [\fB\-x\fR|\fB\-\-discard\-all\fR] [\fB\-X\fR |\fB\-\-discard\-locals\fR] [\fB\-R\fR \fIsectionname\fR |\fB\-\-remove\-section=\fR\fIsectionname\fR] [\fB\-\-keep\-section=\fR\fIsectionpattern\fR] [\fB\-\-remove\-relocations=\fR\fIsectionpattern\fR] [\fB\-\-strip\-section\-headers\fR] [\fB\-o\fR \fIfile\fR] [\fB\-p\fR|\fB\-\-preserve\-dates\fR] [\fB\-D\fR|\fB\-\-enable\-deterministic\-archives\fR] [\fB\-U\fR|\fB\-\-disable\-deterministic\-archives\fR] [\fB\-\-keep\-section\-symbols\fR] [\fB\-\-keep\-file\-symbols\fR] [\fB\-\-only\-keep\-debug\fR] [\fB\-\-plugin\fR \fIname\fR] [\fB\-v\fR |\fB\-\-verbose\fR] [\fB\-V\fR|\fB\-\-version\fR] [\fB\-\-help\fR] [\fB\-\-info\fR] \fIobjfile\fR... .SH "توضیحات (DESCRIPTION)" .IX Header "توضیحات (DESCRIPTION)" ابزار \fBstrip\fR گنو تمامی نمادها را از فایل‌های شیء \&\fIobjfile\fR حذف می‌کند. فهرست فایل‌های شیء می‌تواند شامل آرشیوها باشد. حداقل یک فایل شیء باید مشخص شود. .PP دستور \&\fBstrip\fR فایل‌های مشخص‌شده در آرگومان‌هایش را تغییر می‌دهد، نه اینکه رونوشت‌های تغییریافته را با نام‌های متفاوتی ذخیره کند. .SH "گزینه‌ها (OPTIONS)" .IX Header "گزینه‌ها (OPTIONS)" .IP "\fB\-F\fR \fIbfdname\fR" 4 .IX Item "-F bfdname" .PD 0 .IP \fB\-\-target=\fR\fIbfdname\fR 4 .IX Item "--target=bfdname" .PD فایل شیء اصلی \fIobjfile\fR را به‌عنوان فایلی با قالب کد شیء \fIbfdname\fR در نظر می‌گیرد و آن را در همان قالب بازنویسی می‌کند. .IP \fB\-\-help\fR 4 .IX Item "--help" خلاصه‌ای از گزینه‌های \fBstrip\fR را نمایش می‌دهد و خارج می‌شود. .IP \fB\-\-info\fR 4 .IX Item "--info" فهرستی را نمایش می‌دهد که تمام معماری‌ها و قالب‌های شیء موجود را نشان می‌دهد. .IP "\fB\-I\fR \fIbfdname\fR" 4 .IX Item "-I bfdname" .PD 0 .IP \fB\-\-input\-target=\fR\fIbfdname\fR 4 .IX Item "--input-target=bfdname" .PD فایل شیء اصلی \fIobjfile\fR را به‌عنوان فایلی با قالب کد شیء \fIbfdname\fR در نظر می‌گیرد. .IP "\fB\-O\fR \fIbfdname\fR" 4 .IX Item "-O bfdname" .PD 0 .IP \fB\-\-output\-target=\fR\fIbfdname\fR 4 .IX Item "--output-target=bfdname" .PD فایل \fIobjfile\fR را با فایلی در قالب خروجی \fIbfdname\fR جایگزین می‌کند. .IP "\fB\-R\fR \fIsectionname\fR" 4 .IX Item "-R sectionname" .PD 0 .IP \fB\-\-remove\-section=\fR\fIsectionname\fR 4 .IX Item "--remove-section=sectionname" .PD علاوه بر هر بخشی که در حالت عادی حذف می‌شود، هر بخش با نام \fIsectionname\fR را نیز از فایل خروجی حذف می‌کند. این گزینه می‌تواند بیش از یک بار مشخص شود. توجه داشته باشید که استفاده نادرست از این گزینه ممکن است فایل خروجی را غیرقابل استفاده کند. نویسه عمومی (wildcard) .B * می‌تواند در انتهای \fIsectionname\fR قرار گیرد؛ در این صورت، هر بخشی که نام آن با \fIsectionname\fR آغاز شود حذف خواهد شد. .Sp اگر نخستین نویسه \fIsectionpattern\fR علامت تعجب (!) باشد، بخش‌های منطبق حذف نخواهند شد، حتی اگر استفاده پیشین از .B \-\-remove\-section در همان خط فرمان باعث حذف آن می‌شد. برای نمونه: .Sp .Vb 1 \& \-\-remove\-section=.text.* \-\-remove\-section=!.text.foo .Ve .Sp تمام بخش‌های منطبق با الگوی \*(Aq.text.*\*(Aq را حذف می‌کند، اما بخش \*(Aq.text.foo\*(Aq را حذف نخواهد کرد. .IP \fB\-\-keep\-section=\fR\fIsectionpattern\fR 4 .IX Item "--keep-section=sectionpattern" هنگام حذف بخش‌ها از فایل خروجی، بخش‌های منطبق با \fIsectionpattern\fR را حفظ می‌کند. .IP \fB\-\-remove\-relocations=\fR\fIsectionpattern\fR 4 .IX Item "--remove-relocations=sectionpattern" بازنشانی‌ها (relocations) را برای هر بخش منطبق با \fIsectionpattern\fR از فایل خروجی حذف می‌کند. این گزینه می‌تواند بیش از یک بار مشخص شود. توجه داشته باشید که استفاده نادرست از این گزینه ممکن است فایل خروجی را غیرقابل استفاده کند. استفاده از نویسه‌های عمومی در \fIsectionpattern\fR مجاز است. برای نمونه: .Sp .Vb 1 \& \-\-remove\-relocations=.text.* .Ve .Sp بازنشانی‌ها را برای تمامی بخش‌های منطبق با الگوی \*(Aq.text.*\*(Aq حذف خواهد کرد. .Sp اگر نخستین نویسه \fIsectionpattern\fR علامت تعجب (!) باشد، بازنشانی‌های بخش‌های منطبق حذف نخواهند شد، حتی اگر استفاده پیشین از .B \-\-remove\-relocations در همان خط فرمان باعث حذف بازنشانی‌های آن‌ها می‌شد. برای نمونه: .Sp .Vb 1 \& \-\-remove\-relocations=.text.* \-\-remove\-relocations=!.text.foo .Ve .Sp تمام بازنشانی‌ها را برای بخش‌های منطبق با الگوی \*(Aq.text.*\*(Aq حذف می‌کند، اما بازنشانی‌های مربوط به بخش \*(Aq.text.foo\*(Aq را حذف نخواهد کرد. .IP \fB\-\-strip\-section\-headers\fR 4 .IX Item "--strip-section-headers" هدرهای بخش‌ها (section headers) را حذف می‌کند. این گزینه ویژه فایل‌های ELF است و مستلزم گزینه‌های .B \-\-strip\-all و .B \-\-merge\-notes است. .IP \fB\-s\fR 4 .IX Item "-s" .PD 0 .IP \fB\-\-strip\-all\fR 4 .IX Item "--strip-all" .PD تمامی نمادها را حذف می‌کند. .IP \fB\-g\fR 4 .IX Item "-g" .PD 0 .IP \fB\-S\fR 4 .IX Item "-S" .IP \fB\-d\fR 4 .IX Item "-d" .IP \fB\-\-strip\-debug\fR 4 .IX Item "--strip-debug" .PD تنها نمادهای اشکال‌زدایی را حذف می‌کند. .IP \fB\-\-strip\-dwo\fR 4 .IX Item "--strip-dwo" محتوای تمامی بخش‌های dwo. از استاندارد DWARF را حذف می‌کند، اما سایر بخش‌های اشکال‌زدایی و تمامی نمادها را دست‌نخورده باقی می‌گذارد. برای اطلاعات بیشتر، توضیحات این گزینه را در بخش .B objcopy مشاهده کنید. .IP \fB\-\-strip\-unneeded\fR 4 .IX Item "--strip-unneeded" علاوه بر نمادها و بخش‌های اشکال‌زدایی حذف‌شده توسط .BR \-\-strip\-debug ، تمامی نمادهایی را که برای پردازش بازنشانی مورد نیاز نیستند نیز حذف می‌کند. .IP "\fB\-K\fR \fIsymbolname\fR" 4 .IX Item "-K symbolname" .PD 0 .IP \fB\-\-keep\-symbol=\fR\fIsymbolname\fR 4 .IX Item "--keep-symbol=symbolname" .PD هنگام پیراستن نمادها، نماد \fIsymbolname\fR را حتی اگر در حالت عادی حذف می‌شد، حفظ می‌کند. این گزینه می‌تواند بیش از یک بار مشخص شود. .IP \fB\-M\fR 4 .IX Item "-M" .PD 0 .IP \fB\-\-merge\-notes\fR 4 .IX Item "--merge-notes" .IP \fB\-\-no\-merge\-notes\fR 4 .IX Item "--no-merge-notes" .PD برای فایل‌های ELF، تلاش می‌کند (یا تلاش نمی‌کند) با حذف یادداشت‌های تکراری، اندازه هر بخش از نوع SHT_NOTE را کاهش دهد. حالت پیش‌فرض این است که این کاهش انجام شود، مگر در حالتی که اطلاعات اشکال‌زدایی یا DWO در حال حذف باشند. .IP "\fB\-N\fR \fIsymbolname\fR" 4 .IX Item "-N symbolname" .PD 0 .IP \fB\-\-strip\-symbol=\fR\fIsymbolname\fR 4 .IX Item "--strip-symbol=symbolname" .PD نماد \fIsymbolname\fR را از فایل مبدأ حذف می‌کند. این گزینه می‌تواند بیش از یک بار مشخص شود و می‌تواند با سایر گزینه‌های پیراستن به‌جز .B \-K ترکیب شود. .IP "\fB\-o\fR \fIfile\fR" 4 .IX Item "-o file" خروجی پیراسته‌شده را به جای جایگزینی فایل موجود، در \fIfile\fR قرار می‌دهد. در صورت استفاده از این آرگومان، تنها یک آرگومان \fIobjfile\fR می‌تواند مشخص شود. .IP \fB\-p\fR 4 .IX Item "-p" .PD 0 .IP \fB\-\-preserve\-dates\fR 4 .IX Item "--preserve-dates" .PD تاریخ‌های دسترسی و تغییر فایل را حفظ می‌کند. .IP \fB\-D\fR 4 .IX Item "-D" .PD 0 .IP \fB\-\-enable\-deterministic\-archives\fR 4 .IX Item "--enable-deterministic-archives" .PD در حالت \fIقطعیت‌گرا\fR (deterministic) عمل می‌کند. هنگام کپی کردن اعضای آرشیو و نوشتن نمایه آرشیو، برای شناسه‌های کاربری (UID)، شناسه‌های گروهی (GID) و برچسب‌های زمانی مقدار صفر را استفاده کرده و برای تمام فایل‌ها حالت‌های فایل یکسانی به کار می‌برد. .Sp اگر \fIbinutils\fR با گزینه .B \-\-enable\-deterministic\-archives پیکربندی شده باشد، این حالت به طور پیش‌فرض فعال است. این قابلیت را می‌توان با گزینه .B \-U در زیر غیرفعال کرد. .IP \fB\-U\fR 4 .IX Item "-U" .PD 0 .IP \fB\-\-disable\-deterministic\-archives\fR 4 .IX Item "--disable-deterministic-archives" .PD در حالت \fIقطعیت‌گرا\fR عمل \fIنمی‌کند\fR. این گزینه معکوس گزینه .B \-D در بالا است: هنگام کپی کردن اعضای آرشیو و نوشتن نمایه آرشیو، از مقادیر واقعی UID، GID، برچسب زمانی و حالت فایل آن‌ها استفاده می‌کند. .Sp این حالت پیش‌فرض است، مگر آنکه \fIbinutils\fR با گزینه .B \-\-enable\-deterministic\-archives پیکربندی شده باشد. .IP \fB\-w\fR 4 .IX Item "-w" .PD 0 .IP \fB\-\-wildcard\fR 4 .IX Item "--wildcard" .PD اجازه استفاده از عبارت‌های باقاعده (regular expressions) را در \fIsymbolname\fRهای به‌کاررفته در سایر گزینه‌های خط فرمان می‌دهد. عملگرهای علامت سؤال (?)، ستاره (*)، بک‌اسلش (\e) و قلاب‌ها ([]) می‌توانند در هر کجای نام نماد استفاده شوند. اگر نخستین نویسه نام نماد علامت تعجب (!) باشد، معنای سوییچ برای آن نماد معکوس می‌شود. برای نمونه: .Sp .Vb 1 \& \-w \-K !foo \-K fo* .Ve .Sp باعث می‌شود که .B strip تنها نمادهایی را که با حروف "fo" آغاز می‌شوند نگه دارد، اما نماد "foo" را حذف کند. .IP \fB\-x\fR 4 .IX Item "-x" .PD 0 .IP \fB\-\-discard\-all\fR 4 .IX Item "--discard-all" .PD نمادهای غیرسراسری (non-global) را حذف می‌کند. .IP \fB\-X\fR 4 .IX Item "-X" .PD 0 .IP \fB\-\-discard\-locals\fR 4 .IX Item "--discard-locals" .PD نمادهای محلی ایجادشده توسط کامپایلر را حذف می‌کند. (این نمادها معمولاً با .B L یا .B . آغاز می‌شوند.) .IP \fB\-\-keep\-section\-symbols\fR 4 .IX Item "--keep-section-symbols" هنگام پیراستن فایل، برای نمونه با .B \-\-strip\-debug یا .BR \-\-strip\-unneeded ، هر نمادی را که نام بخش‌ها را مشخص می‌کند و در غیر این صورت حذف می‌شد، حفظ می‌کند. .IP \fB\-\-keep\-file\-symbols\fR 4 .IX Item "--keep-file-symbols" هنگام پیراستن فایل، برای نمونه با .B \-\-strip\-debug یا .BR \-\-strip\-unneeded ، هر نمادی را که نام فایل‌های مبدأ را مشخص می‌کند و در غیر این صورت حذف می‌شد، حفظ می‌کند. .IP \fB\-\-only\-keep\-debug\fR 4 .IX Item "--only-keep-debug" یک فایل را می‌پیراید و محتوای بخش‌هایی را که توسط \fB\-\-strip\-debug\fR حذف نمی‌شدند خالی می‌کند، و بخش‌های اشکال‌زدایی را دست‌نخورده باقی می‌گذارد. در فایل‌های ELF، این گزینه تمام بخش‌های یادداشت (note sections) را نیز در خروجی حفظ می‌کند. .Sp توجه \- هدرهای بخش‌های پیراسته‌شده، از جمله اندازه آن‌ها، حفظ می‌شوند، اما محتوای بخش‌ها دور ریخته می‌شود. هدرهای بخش حفظ می‌شوند تا ابزارهای دیگر بتوانند فایل اطلاعات اشکال‌زدایی (debuginfo) را با فایل اجرایی واقعی تطبیق دهند، حتی اگر آن فایل اجرایی به فضای آدرس متفاوتی منتقل شده باشد. .Sp هدف این است که این گزینه در ترکیب با \fB\-\-add\-gnu\-debuglink\fR برای ایجاد یک فایل اجرایی دو بخشی استفاده شود: یکی یک باینری پیراسته‌شده که فضای کمتری در حافظه RAM و در توزیع اشغال می‌کند، و دومی یک فایل حاوی اطلاعات اشکال‌زدایی که تنها در صورت نیاز به قابلیت‌های اشکال‌زدایی لازم است. مراحل پیشنهادی برای ایجاد این فایل‌ها به شرح زیر است: .RS 4 .IP 1. 4 فایل اجرایی را به‌طور معمول پیوند (link) دهید. با فرض اینکه نام آن \f(CW\*(C`foo\*(C'\fR باشد، سپس... .IP 2. 4 دستور \f(CW\*(C`objcopy \-\-only\-keep\-debug foo foo.dbg\*(C'\fR را اجرا کنید تا فایلی حاوی اطلاعات اشکال‌زدایی ایجاد شود. .IP 3. 4 دستور \f(CW\*(C`strip \-\-strip\-debug foo\*(C'\fR را اجرا کنید تا یک فایل اجرایی پیراسته‌شده ایجاد شود. .IP 4. 4 دستور \f(CW\*(C`objcopy \-\-add\-gnu\-debuglink=foo.dbg foo\*(C'\fR را اجرا کنید تا پیوندی به اطلاعات اشکال‌زدایی به فایل اجرایی پیراسته‌شده اضافه شود. .RE .RS 4 .Sp توجه \-\-\- انتخاب \f(CW\*(C`.dbg\*(C'\fR به‌عنوان پسوند فایل اطلاعات اشکال‌زدایی اختیاری است. همچنین مرحله \f(CW\*(C`\-\-only\-keep\-debug\*(C'\fR اختیاری است. در عوض می‌توانید این کار را انجام دهید: .IP 1. 4 فایل اجرایی را به‌طور معمول پیوند دهید. .IP 2. 4 \f(CW\*(C`foo\*(C'\fR را به \f(CW\*(C`foo.full\*(C'\fR کپی کنید. .IP 3. 4 دستور \f(CW\*(C`strip \-\-strip\-debug foo\*(C'\fR را اجرا کنید. .IP 4. 4 دستور \f(CW\*(C`objcopy \-\-add\-gnu\-debuglink=foo.full foo\*(C'\fR را اجرا کنید. .RE .RS 4 .Sp به این معنی که فایلی که توسط \fB\-\-add\-gnu\-debuglink\fR به آن اشاره می‌شود می‌تواند همان فایل اجرایی کامل باشد و نیازی نیست حتماً فایلی باشد که توسط سوئیچ \fB\-\-only\-keep\-debug\fR ایجاد شده است. .Sp توجه \-\-\- این سوئیچ تنها برای استفاده در فایل‌های کاملاً پیوندیافته (fully linked) در نظر گرفته شده است. استفاده از آن روی فایل‌های شیء که اطلاعات اشکال‌زدایی در آن‌ها ممکن است ناقص باشد منطقی نیست. علاوه بر این، قابلیت gnu_debuglink در حال حاضر تنها از وجود یک نام فایل حاوی اطلاعات اشکال‌زدایی پشتیبانی می‌کند، نه چندین نام فایل بر اساس هر فایل شیء. .RE .IP "\fB\-\-plugin\fR \fIname\fR" 4 .IX Item "--plugin name" پلاگینی با نام \fIname\fR را برای افزودن پشتیبانی از انواع هدف‌های بیشتر بارگذاری می‌کند. این گزینه تنها در صورتی در دسترس است که زنجیره ابزار با فعال بودن پشتیبانی از پلاگین ساخته شده باشد. .Sp اگر \fB\-\-plugin\fR مشخص نشده باشد، اما پشتیبانی از پلاگین فعال باشد، آن‌گاه \fBstrip\fR فایل‌های موجود در \fI${libdir}/bfd\-plugins\fR را به ترتیب حروف الفبا بررسی کرده و از اولین پلاگینی که شیء مورد نظر را بپذیرد استفاده می‌کند. .Sp لطفاً توجه داشته باشید که این پوشه جستجوی پلاگین، \fIهمان\fR پوشه مورد استفاده توسط گزینه \fB\-plugin\fR ابزار \fBld\fR نیست. برای این‌که \fBstrip\fR بتواند از پلاگین پیونددهنده استفاده کند، آن پلاگین باید در پوشه \fI${libdir}/bfd\-plugins\fR کپی شود. برای کامپایل‌های مبتنی بر GCC، پلاگین پیونددهنده \fIliblto_plugin.so.0.0.0\fR نام دارد. برای کامپایل‌های مبتنی بر Clang، این پلاگین \fILLVMgold.so\fR نامیده می‌شود. پلاگین GCC همیشه با نسخه‌های پیشین سازگار است، بنابراین کپی کردن جدیدترین نسخه کافی خواهد بود. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD شماره نسخه \fBstrip\fR را نمایش می‌دهد. .IP \fB\-v\fR 4 .IX Item "-v" .PD 0 .IP \fB\-\-verbose\fR 4 .IX Item "--verbose" .PD خروجی با جزئیات: تمام فایل‌های شیء اصلاح‌شده را فهرست می‌کند. در مورد آرشیوها، \fBstrip \-v\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)" مدخل‌های Info برای \fIbinutils\fR. .SH "حق نشر (COPYRIGHT)" .IX Header "حق نشر (COPYRIGHT)" حق نشر (c) ۱۹۹۱\-۲۰۲۵ Free Software Foundation, Inc. .PP مجوز کپی، توزیع و/یا تغییر این سند تحت شرایط «مجوز مستندات آزاد گنو» (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخه بعدی منتشر شده توسط بنیاد نرم‌افزارهای آزاد اعطا می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد و بدون متون پشت جلد. نسخه‌ای از این مجوز در بخشی با عنوان "GNU Free Documentation License" گنجانده شده است.