एनएम - लिनक्स कमांड - यूनिक्स कमांड

एनएम - ऑब्जेक्ट फाइलों से सूची प्रतीकों

SYNOPSIS

एनएम [ -ए | --debug-syms ] [ -g | केवल वैकल्पिक ]
[ -बी ] [ -सी | --डेमंगल [= शैली ]] [ -डी | गतिशील ]
[ -एस | - प्रिंट आकार ] [ -s | - प्रिंट-आर्मप ]
[ -ए | -o | - प्रिंट-फ़ाइल-नाम ]
[ -एन | -v | - न्यूमेरिक-सॉर्ट ] [ -पी | --no-sort ]
[ -आर | - रिवर्स-सॉर्ट ] [ - आकार-क्रम ] [ -u | - केवल परिभाषित ]
[ -टी रेडिक्स | --radix = radix ] [ -P | --portability ]
[ --target = bfdname ] [ -f प्रारूप | --format = प्रारूप ]
[- परिभाषित केवल ] [ -एल | लाइनलाइन संख्या ] [ --no-demangle ]
[ -वी | --वर्जन ] [ -एक्स 32_64 ] [ --help ] [ objfile ...]

विवरण

जीएनयू एनएम ऑब्जेक्ट फाइलों से प्रतीकों को सूचीबद्ध करता है objfile .... यदि कोई ऑब्जेक्ट फ़ाइलें तर्क के रूप में सूचीबद्ध नहीं हैं, तो एनएम फ़ाइल को a.out मानता है।

प्रत्येक प्रतीक के लिए, एनएम दिखाता है:

*

विकल्पों द्वारा चुने गए रेडिक्स में प्रतीक मान (नीचे देखें), या डिफ़ॉल्ट रूप से हेक्साडेसिमल।

*

प्रतीक प्रकार। कम से कम निम्नलिखित प्रकार का उपयोग किया जाता है; ऑब्जेक्ट फ़ाइल प्रारूप के आधार पर अन्य भी हैं। यदि लोअरकेस, प्रतीक स्थानीय है; अगर अपरकेस, प्रतीक वैश्विक (बाहरी) है।

प्रतीक का मूल्य पूर्ण है, और आगे लिंकिंग द्वारा नहीं बदला जाएगा।

बी

प्रतीक अनियंत्रित डेटा खंड (बीएसएस के रूप में जाना जाता है) में है।

सी

प्रतीक आम है। आम प्रतीक अनियंत्रित डेटा हैं। लिंक करते समय, एक ही नाम के साथ कई आम प्रतीकों दिखाई दे सकते हैं। यदि प्रतीक कहीं भी परिभाषित किया गया है, तो सामान्य प्रतीकों को अपरिभाषित संदर्भ के रूप में माना जाता है।

डी

प्रतीक प्रारंभिक डेटा खंड में है।

जी

प्रतीक छोटी वस्तुओं के लिए प्रारंभिक डेटा खंड में है। कुछ ऑब्जेक्ट फ़ाइल स्वरूप छोटे डेटा ऑब्जेक्ट्स के लिए अधिक कुशल पहुंच की अनुमति देते हैं, जैसे वैश्विक वैश्विक चर के रूप में वैश्विक int चर के रूप में।

मैं

प्रतीक एक और प्रतीक के लिए एक अप्रत्यक्ष संदर्भ है। यह a.out ऑब्जेक्ट फ़ाइल प्रारूप में एक GNUextension है जिसका शायद ही कभी उपयोग किया जाता है।

एन

प्रतीक एक डीबगिंग प्रतीक है।

आर

प्रतीक केवल पढ़ने के लिए डेटा खंड में है।

एस

प्रतीक छोटी वस्तुओं के लिए एक प्रारंभिक डेटा खंड में है।

टी

प्रतीक पाठ (कोड) खंड में है।

यू

प्रतीक अपरिभाषित है।

वी

एक प्रतीक एक कमजोर वस्तु है। जब एक कमजोर परिभाषित प्रतीक सामान्य परिभाषित प्रतीक से जुड़ा होता है, तो सामान्य परिभाषित प्रतीक का उपयोग किसी त्रुटि के साथ नहीं किया जाता है। जब एक कमजोर अपरिभाषित प्रतीक जुड़ा होता है और प्रतीक परिभाषित नहीं किया जाता है, तो कमजोर प्रतीक का मूल्य शून्य के बिना शून्य हो जाता है।

डब्ल्यू

प्रतीक एक कमजोर प्रतीक है जिसे विशेष रूप से कमजोर वस्तु प्रतीक के रूप में टैग नहीं किया गया है। जब एक कमजोर परिभाषित प्रतीक सामान्य परिभाषित प्रतीक से जुड़ा होता है, तो सामान्य परिभाषित प्रतीक का उपयोग किसी त्रुटि के साथ नहीं किया जाता है। जब एक कमजोर अपरिभाषित प्रतीक जुड़ा होता है और प्रतीक परिभाषित नहीं किया जाता है, तो कमजोर प्रतीक का मूल्य शून्य के बिना शून्य हो जाता है।

-

प्रतीक a.out ऑब्जेक्ट फ़ाइल में एक स्टैब्स प्रतीक है। इस मामले में, मुद्रित अगले मान अन्य फ़ील्ड, स्टैब्स desc फ़ील्ड, और स्टैब प्रकार हैं। Stabs प्रतीकों का उपयोग डीबगिंग जानकारी रखने के लिए किया जाता है।

?

प्रतीक प्रकार अज्ञात है, या ऑब्जेक्ट फ़ाइल प्रारूप विशिष्ट है।

*

प्रतीक का नाम

विकल्प

विकल्पों के रूप में यहां दिखाए गए विकल्पों के लंबे और छोटे रूप, समकक्ष हैं।

-ए

-ओ

--print-फ़ाइल-नाम

इनपुट प्रतीक (या संग्रह सदस्य) के नाम से प्रत्येक प्रतीक से पहले, जिसमें यह पाया गया था, केवल इसके बाद के सभी प्रतीकों से पहले इनपुट फ़ाइल की पहचान करने के बजाय।

-ए

--debug-SYMS

सभी प्रतीकों को प्रदर्शित करें, यहां तक ​​कि डीबगर-केवल प्रतीकों; आमतौर पर ये सूचीबद्ध नहीं हैं।

-B

--format = bsd के समान (एमआईपीएस एनएम के साथ संगतता के लिए)।

-सी

- डेमंगल [= शैली ]

उपयोगकर्ता स्तर के नामों में निम्न स्तर के प्रतीक नामों को डीकोड ( डिमंगल ) करें। सिस्टम द्वारा प्रीपेड किए गए किसी भी प्रारंभिक अंडरस्कोर को हटाने के अलावा, यह सी ++ फ़ंक्शन नामों को पठनीय बनाता है। विभिन्न कंपाइलरों में अलग-अलग मैंगलिंग शैली होती है। वैकल्पिक demangling शैली तर्क का उपयोग आपके कंपाइलर के लिए उचित demangling शैली का चयन करने के लिए किया जा सकता है।

--no-demangle

निम्न स्तर के प्रतीक नामों को विचलित न करें। यह डिफ़ॉल्ट है।

डी

--dynamic

सामान्य प्रतीकों की बजाय गतिशील प्रतीकों को प्रदर्शित करें। यह गतिशील वस्तुओं के लिए केवल सार्थक है, जैसे कुछ प्रकार के साझा पुस्तकालय।

-फ प्रारूप

--format = प्रारूप

आउटपुट प्रारूप प्रारूप का प्रयोग करें, जो "बीएसडी", "sysv", या "posix" हो सकता है। डिफ़ॉल्ट "बीएसडी" है। प्रारूप का केवल पहला अक्षर महत्वपूर्ण है; यह या तो ऊपरी या निचला मामला हो सकता है।

जी

--extern-केवल

केवल बाहरी प्रतीकों को प्रदर्शित करें।

-l

--पंक्ति संख्याएँ

प्रत्येक प्रतीक के लिए, फ़ाइल नाम और लाइन नंबर खोजने का प्रयास करने के लिए डीबगिंग जानकारी का उपयोग करें। एक निर्धारित प्रतीक के लिए, प्रतीक के पते की रेखा संख्या देखें। एक अपरिभाषित प्रतीक के लिए, एक स्थानांतरण प्रविष्टि की रेखा संख्या की तलाश करें जो प्रतीक को संदर्भित करता है। यदि लाइन नंबर की जानकारी पाई जा सकती है, तो अन्य प्रतीक जानकारी के बाद इसे प्रिंट करें।

-n

-v

--numeric-तरह

अपने नामों से वर्णानुक्रम के बजाय संख्याओं को अपने पते से क्रमबद्ध करें।

-p

--no-तरह

किसी भी क्रम में प्रतीकों को सॉर्ट करने के लिए परेशान न करें; सामना के क्रम में उन्हें मुद्रित करें।

-पी

--portability

डिफ़ॉल्ट स्वरूप के बजाय POSIX.2 मानक आउटपुट प्रारूप का उपयोग करें। समकक्ष -f posix के लिए

-S

--print आकार

"बीएसडी" आउटपुट प्रारूप के लिए परिभाषित प्रतीकों का प्रिंट आकार।

-s

--print-armap

संग्रह सदस्यों से प्रतीकों को सूचीबद्ध करते समय, अनुक्रमणिका शामिल करें: एक मानचित्रण ( ar या ranlib द्वारा संग्रह में संग्रहीत) जिसमें से मॉड्यूल में नामों के लिए परिभाषाएं होती हैं।

-r

--reverse-तरह

क्रम के क्रम को उलट दें (चाहे संख्यात्मक या वर्णमाला); आखिरी बार आओ।

--size-तरह

आकार के आधार पर क्रमबद्ध करें। आकार को प्रतीक के मूल्य और अगले उच्च मूल्य के साथ प्रतीक के मूल्य के बीच अंतर के रूप में गणना की जाती है। प्रतीक के आकार को मूल्य के बजाय मुद्रित किया जाता है।

-टी रेडिक्स

--radix = radix

प्रतीक मानों को मुद्रित करने के लिए रेडिक्स के रूप में रेडिक्स का उपयोग करें। यह दशमलव के लिए डी होना चाहिए, o octal के लिए, या x हेक्साडेसिमल के लिए x होना चाहिए।

--target = bfdname

अपने सिस्टम के डिफ़ॉल्ट प्रारूप के अलावा किसी ऑब्जेक्ट कोड प्रारूप निर्दिष्ट करें।

-u

--undefined-केवल

केवल अपरिभाषित प्रतीकों को प्रदर्शित करें (प्रत्येक ऑब्जेक्ट फ़ाइल के लिए बाहरी)।

--defined-केवल

प्रत्येक ऑब्जेक्ट फ़ाइल के लिए केवल परिभाषित प्रतीकों को प्रदर्शित करें।

-वी

--version

एनएम और बाहर निकलने के संस्करण संख्या दिखाएं।

-एक्स

इस विकल्प को एनएम के AIX संस्करण के साथ संगतता के लिए अनदेखा किया जाता है। यह एक पैरामीटर लेता है जो स्ट्रिंग 32_64 होना चाहिए। AIX एनएम का डिफ़ॉल्ट मोड -X 32 से मेल खाता है, जो जीएनयू एनएम द्वारा समर्थित नहीं है।

--मदद

एनएम और बाहर निकलने के विकल्पों का सारांश दिखाएं।

यह भी देखें

ar (1), objdump (1), ranlib (1), और binutils के लिए जानकारी प्रविष्टियां।

महत्वपूर्ण: यह देखने के लिए मैन कमांड ( % man ) का उपयोग करें कि आपके विशेष कंप्यूटर पर कमांड का उपयोग कैसे किया जाता है।