Skip to main content

Linux - قيادة Unix: nm

Kia Picanto 1.1 (2006) on German Autobahn - POV Top Speed Drive (أبريل 2024)

Kia Picanto 1.1 (2006) on German Autobahn - POV Top Speed Drive (أبريل 2024)
Anonim

نانومتر - قائمة الرموز من ملفات الكائن

موجز

nm |--debug-سلالات SYMS -g|--extern فقط -C|--demangle= قلم المدقة |--dynamic -S|--حجم الطباعة -s|--print-armap |-o|--print ملف اسم -n|-الخامس|--numeric الفرز -p|-ما لا الفرز -r|--reverse الفرز --size الفرز -u|--undefined فقط -t الأصل |--radix = الأصل ف|--قابلية التنقل --target = bfdname -F شكل |--format = شكل --defined فقط -l|--أرقام الأسطر -ما لا-demangle -الخامس|--الإصدار -X 32_64 --مساعدة objfile …

وصف

GNUنانومتر يسرد الرموز من ملفات الكائن objfile …. إذا لم يتم سرد أي ملفات الكائن كوسائط ،نانومتر يفترض الملف a.out .

لكل رمز ،نانومتر عروض:

*

قيمة الرمز ، في العنصر الأساسي المحدد بواسطة خيارات (راجع أدناه) ، أو ست عشري بشكل افتراضي.

*

نوع الرمز. على الأقل الأنواع التالية مستخدمة ؛ البعض الآخر ، كذلك ، اعتمادا على تنسيق ملف الكائن. في حالة الأحرف الصغيرة ، يكون الرمز محليًا ؛ إذا كان الرمز كبيرًا ، فسيكون الرمز عالميًا (خارجي).

ا

قيمة الرمز مطلقة ، ولن يتم تغييرها عن طريق الربط الإضافي.

ب

يوجد الرمز في قسم البيانات غير المهيأ (المعروف باسم BSS).

C

الرمز شائع. الرموز الشائعة هي بيانات غير مهيأة. عند الربط ، قد تظهر عدة رموز مشتركة بنفس الاسم. إذا تم تعريف الرمز في أي مكان ، يتم التعامل مع الرموز الشائعة كمراجع غير محددة.

د

يوجد الرمز في قسم البيانات المبدئي.

G

يوجد الرمز في قسم بيانات تم تهيئته للأشياء الصغيرة. تسمح بعض تنسيقات ملفات الكائنات بالوصول الأكثر فعالية إلى كائنات البيانات الصغيرة ، مثل متغير int عمومي بدلاً من صفيف عمومي كبير.

أنا

الرمز هو مرجع غير مباشر لرمز آخر. هذا هو GNUextension لتنسيق ملف كائن a.out الذي نادرًا ما يُستخدم.

N

الرمز رمز تصحيح.

R

الرمز في مقطع بيانات للقراءة فقط.

S

الرمز في مقطع بيانات غير مهيأ للكائنات الصغيرة.

تي

الرمز موجود في قسم النص (الكود).

U

الرمز غير معروف.

الخامس

الرمز هو كائن ضعيف. عندما يتم ربط رمز محدد ضعيف برمز محدد عادي ، يتم استخدام الرمز المحدد الطبيعي بدون أي خطأ. عندما يتم ربط رمز غير معروف ضعيف ولا يتم تعريف الرمز ، تصبح قيمة الرمز الضعيف صفراً بدون أي خطأ.

W

الرمز هو رمز ضعيف لم يتم وضع علامة عليه بشكل محدد كرمز كائن ضعيف. عندما يتم ربط رمز محدد ضعيف برمز محدد عادي ، يتم استخدام الرمز المحدد الطبيعي بدون أي خطأ. عندما يتم ربط رمز غير معروف ضعيف ولا يتم تعريف الرمز ، تصبح قيمة الرمز الضعيف صفراً بدون أي خطأ.

-

الرمز هو رمز stabs في ملف كائن a.out. في هذه الحالة ، تكون القيم التالية المطبوعة هي stabs الحقول الأخرى وحقل descabs desc ونوع stab. يتم استخدام رموز Stabs لعقد معلومات تصحيح الأخطاء.

?

نوع الرمز غير معروف أو تنسيق ملف كائن معين.

*

اسم الرمز.

خيارات

الأشكال الطويلة والقصيرة للخيارات ، كما هو موضح هنا كبدائل ، متساوية.

-o

--print ملف اسم

يسبق كل رمز باسم ملف الإدخال (أو عضو الأرشيف) الذي تم العثور عليه فيه ، بدلاً من تحديد ملف الإدخال مرة واحدة فقط ، قبل كافة رموزه.

--debug-سلالات SYMS

عرض كافة الرموز ، حتى رموز debugger-only؛ عادة هذه ليست مدرجة.

كمثل--format = BSD (للتوافق مع MIPSنانومتر).

-C

--demangle = قلم المدقة

فك تشفير ( demangle ) أسماء الرموز ذات المستوى المنخفض في أسماء على مستوى المستخدم. بالإضافة إلى إزالة أي تسطير أولية أولي prepended بواسطة النظام ، هذا يجعل أسماء الدالة C ++ للقراءة. لدى المجمعين المختلفين أساليب مختلفة للصرف. يمكن استخدام وسيطة نمط التفضيل الاختيارية لاختيار نمط تشتيت مناسب للمترجم الخاص بك.

-ما لا-demangle

لا تقم بتهديم أسماء الرموز ذات المستوى المنخفض. هذا هو الافتراضي.

--dynamic

عرض الرموز الديناميكية بدلاً من الرموز العادية. هذا مفيد فقط للكائنات الحيوية ، مثل أنواع معينة من المكتبات المشتركة.

-F شكل

--format = شكل

استخدم تنسيق الإخراج شكل ، والتي يمكن أن تكون "bsd" أو "sysv" أو "posix". الافتراضي هو "bsd". فقط أول شخصية من شكل غير مهمة؛ يمكن أن يكون إما حالة علوية أو صغيرة.

-g

--extern فقط

عرض الرموز الخارجية فقط.

-l

--أرقام الأسطر

لكل رمز ، استخدم معلومات تصحيح الأخطاء لمحاولة العثور على اسم الملف ورقم السطر. للحصول على رمز محدد ، ابحث عن رقم سطر عنوان الرمز. للحصول على رمز غير محدد ، ابحث عن رقم سطر إدخال النقل الذي يشير إلى الرمز. إذا كان يمكن العثور على معلومات رقم السطر ، طباعته بعد معلومات الرمز الأخرى.

-n

-الخامس

--numeric الفرز

فرز الرموز عدديًا حسب عناوينها ، بدلاً من أبجديًا بأسمائها.

-p

-ما لا الفرز

لا تهتم لفرز الرموز في أي ترتيب. طباعتها في الترتيب واجهتها.

ف

--قابلية التنقل

استخدم تنسيق الإخراج القياسي POSIX.2 بدلاً من التنسيق الافتراضي. أي ما يعادل-f posix.

-S

--حجم الطباعة

حجم طباعة الرموز المحددة لتنسيق خرج "bsd".

-s

--print-armap

عند إدراج الرموز من أعضاء الأرشيف ، قم بتضمين الفهرس: رسم الخرائط (المخزن في الأرشيف بواسطةع أوranlib) منها الوحدات التي تحتوي على تعريفات للأسماء.

-r

--reverse الفرز

عكس ترتيب الفرز (سواء رقمي أو أبجدي) ؛ دعونا تأتي في المقام الأول.

--size الفرز

فرز الرموز حسب الحجم. يتم حساب الحجم على أنه الفرق بين قيمة الرمز وقيمة الرمز مع القيمة الأعلى التالية. تتم طباعة حجم الرمز بدلاً من القيمة.

-t الأصل

--radix = الأصل

استعمال الأصل مثل الراديكس لطباعة قيم الرمز. يجب ان يكوند للعشرية ،س لثماني ، أوس الست عشري.

--target = bfdname

حدد تنسيق رمز الكائن غير التنسيق الافتراضي للنظام الخاص بك.

-u

--undefined فقط

عرض الرموز غير معرفة فقط (تلك الخارجية لكل ملف كائن).

--defined فقط

عرض الرموز المحددة فقط لكل ملف كائن.

-الخامس

--الإصدار

إظهار رقم إصدارنانومتر والخروج.

-X

يتم تجاهل هذا الخيار للتوافق مع إصدار AIX مننانومتر. يأخذ معلمة واحدة والتي يجب أن تكون السلسلة32_64. الوضع الافتراضي ل AIXنانومتر يتوافق مع-X 32، والتي لا يدعمها غنونانومتر.

--مساعدة

عرض ملخص للخيارات لنانومتر والخروج.

أنظر أيضا

ع (1), objdump (1), ranlib (1) ، وإدخالات المعلومات لـ بينوتيلس .

مهم: استخدم ال رجل أمر ( رجل٪ ) لمعرفة كيفية استخدام الأمر على جهاز الكمبيوتر الخاص بك.