nm - ఆబ్జెక్ట్ ఫైల్స్ నుండి జాబితా చిహ్నాలు
సంక్షిప్తముగా
nm [ -a | - -debug-syms ] [ -g | - ఎక్స్పెర్ట్-మాత్రమే ]
[ -B ] [ -C | --demangle [= శైలి ]] [ -D | - డైనమిక్ ]
[ -S | - ప్రింట్-సైజు ] [ -s | - ప్రింట్-ఆర్మ్ప్పాప్ ]
[ -A | -O | - ప్రింట్-ఫైల్-పేరు ]
[ -n | -v | - సంఖ్యా-విధమైన ] [ -p | --no- విధమైన ]
[ -r | - శ్రేణి-విధమైన ] [ -size-sort ] [ -u | - పొడిగింపు-మాత్రమే ]
[ -అది రాడిక్స్ | --radix = radix ] [ -P | --portability ]
[ --target = bfdname ] [ -f ఫార్మాట్ | - ఫార్మాట్ = ఫార్మాట్ ]
[ -defined-only ] [ -l | - లైన్-నంబర్స్ ] [ - నో-డిమాంగిల్ ]
[ -V | - సంస్కరణ ] [ -X 32_64 ] [ --help ] [ objfile ...]
వివరణ
GNU nm ఆబ్జైల్ ఫైల్స్ నుండి చిహ్నాలు సూచిస్తుంది .... ఆర్గ్యుమెంట్స్ గా ఏ ఆబ్జెక్టులు లేకుంటే, nm ఫైలు a.out ను ఊహిస్తుంది.
ప్రతి గుర్తుకు, nm చూపిస్తుంది:
*
చిహ్న విలువ, ఎంపికలచే ఎంపిక చేయబడిన radix లో (క్రింద చూడండి), లేదా హెక్సాడెసిమల్ అప్రమేయంగా.
*
సంకేత రకం. కనీసం క్రింది రకాలు ఉపయోగించబడతాయి; ఇతరులు, అలాగే, ఆబ్జెక్ట్ ఫైల్ ఫార్మాట్ మీద ఆధారపడి ఉంటాయి. చిన్న ఉంటే, గుర్తు స్థానికం; పెద్ద ఉంటే, చిహ్నం గ్లోబల్ (బాహ్య).
ఒక
గుర్తు యొక్క విలువ సంపూర్ణంగా ఉంటుంది, మరియు మరింత లింక్ ద్వారా మార్చబడదు.
B
సంకేతం uninitialized డేటా విభాగంలో ఉంది (BSS అని పిలుస్తారు).
సి
చిహ్నం సాధారణం. సాధారణ చిహ్నాలు ఏకీకృత డేటా. లింక్ చేస్తున్నప్పుడు, ఒకే పేరుతో బహుళ సాధారణ చిహ్నాలు కనిపిస్తాయి. చిహ్నం ఎక్కడైనా నిర్వచించబడితే, సాధారణ చిహ్నాలు నిర్వచించబడని సూచనలుగా పరిగణిస్తారు.
D
గుర్తు ప్రారంభించిన విభాగ విభాగంలో ఉంది.
G
చిన్న వస్తువులకు గుర్తుచేసిన ప్రారంభ విభాగంలో ఉంది. కొన్ని ఆబ్జెక్టివ్ ఫార్మాట్లు చిన్న డేటా వస్తువులను మరింత సమర్థవంతంగా యాక్సెస్ చేయడానికి అనుమతిస్తాయి, ప్రపంచవ్యాప్తంగా ఉన్న ప్రపంచ వేరియబుల్ వంటి పెద్ద ప్రపంచ శ్రేణికి వ్యతిరేకంగా ఉంటుంది.
నేను
ఈ చిహ్నం మరొక గుర్తుకు పరోక్ష సూచన. ఇది అరుదుగా వాడుతున్న a.out ఆబ్జెక్ట్ ఫైల్ ఫార్మాట్కు ఒక క్లుప్త విస్తరణ.
N
చిహ్నం ఒక డీబగ్గింగ్ చిహ్నం.
R
గుర్తు చదవడానికి-మాత్రమే డేటా విభాగంలో ఉంది.
S
చిన్న వస్తువులకు గుర్తు లేని విధాన విభాగంలో ఉంది.
T
చిహ్నం టెక్స్ట్ (కోడ్) విభాగంలో ఉంది.
U
చిహ్నం నిర్వచించబడలేదు.
V
ఒక సంకేతం బలహీనమైన వస్తువు. ఒక బలహీనమైన నిర్వచించబడిన చిహ్నం ఒక సాధారణ నిర్వచించబడిన చిహ్నానికి అనుసంధానించబడినప్పుడు, సాధారణ నిర్వచించబడిన గుర్తు ఎటువంటి లోపంతో ఉపయోగించబడుతుంది. ఒక బలహీనమైన నిర్వచించబడని చిహ్నం అనుసంధానించబడినప్పుడు మరియు గుర్తు నిర్వచించబడకపోతే, బలహీన చిహ్న విలువ ఎటువంటి లోపంతో సున్నా అవుతుంది.
W
ఈ సంకేతం ఒక బలహీన చిహ్నంగా ఉంది, ఇది బలహీనమైన వస్తువు చిహ్నంగా ప్రత్యేకంగా ట్యాగ్ చేయబడలేదు. ఒక బలహీనమైన నిర్వచించబడిన చిహ్నం ఒక సాధారణ నిర్వచించబడిన చిహ్నానికి అనుసంధానించబడినప్పుడు, సాధారణ నిర్వచించబడిన గుర్తు ఎటువంటి లోపంతో ఉపయోగించబడుతుంది. ఒక బలహీనమైన నిర్వచించబడని చిహ్నం అనుసంధానించబడినప్పుడు మరియు గుర్తు నిర్వచించబడకపోతే, బలహీన చిహ్న విలువ ఎటువంటి లోపంతో సున్నా అవుతుంది.
-
A.out ఆబ్జెక్టు ఫైలులో గుర్తుంచడం ఒక గుర్తు. ఈ సందర్భంలో, తదుపరి విలువలు ముద్రించినవి ఇతర రంగాలను, స్ట్రాబ్లు వర్ణ క్షేత్రం, మరియు కత్తిపోటు రకం. డీబగ్గింగ్ సమాచారాన్ని పట్టుకోడానికి స్టాబ్ చిహ్నాలు ఉపయోగించబడతాయి.
?
చిహ్నం రకం తెలియదు, లేదా ఆబ్జెక్ట్ ఫైల్ ఫార్మాట్ నిర్దిష్ట.
*
చిహ్నం పేరు.
OPTIONS
ప్రత్యామ్నాయాల వలె చూపించిన ఎంపికల పొడవు మరియు చిన్న రూపాలు సమానం.
-A
-o
--print ఫైల్ పేరు
ఇన్పుట్ ఫైల్ (లేదా ఆర్కైవ్ సభ్యుడు) పేరుతో ప్రతి గుర్తును ప్రతి సింబల్కు ముందుగానే ఇన్పుట్ ఫైల్ను ఒక్కసారి మాత్రమే గుర్తిస్తుంది.
-a
--debug-syms
అన్ని చిహ్నాలు, డీబగ్గర్-మాత్రమే చిహ్నాలను కూడా ప్రదర్శిస్తుంది; సాధారణంగా ఇవి జాబితా చేయబడలేదు.
-B
అదే --format = bsd (MIPS nm తో అనుకూలత కోసం).
-C
--demangle [= శైలి ]
డీకోడ్ ( డిమాంగిల్ ) తక్కువస్థాయి చిహ్న పేర్లు వినియోగదారు-స్థాయి పేర్లలోకి . సిస్టం చేత ఏవైనా ప్రారంభ అండర్ స్కోర్ను తొలగించటంతో పాటు, ఇది C ++ ఫంక్షన్ పేర్లను రీడబుల్ చేస్తుంది. వేర్వేరు కంపైలర్లకు వేర్వేరు మింగ్లింగ్ శైలులు ఉన్నాయి. మీ కంపైలర్ కొరకు తగిన డెమాంగ్లింగ్ శైలిని ఎంచుకోవడానికి ఐచ్ఛిక డిమాంజింగ్ శైలి వాదనను ఉపయోగించవచ్చు.
--no-demangle
తక్కువస్థాయి చిహ్న పేర్లను డిమాంజి చేయవద్దు. ఇది డిఫాల్ట్.
-D
--dynamic
సాధారణ చిహ్నాలు కంటే డైనమిక్ చిహ్నాలు ప్రదర్శించు. కొన్ని రకాల భాగస్వామ్య గ్రంథాలయాల వంటి డైనమిక్ వస్తువులకు ఇది అర్ధవంతమైనది.
-f ఫార్మాట్
- ఫార్మాట్ = ఫార్మాట్
అవుట్పుట్ ఫార్మాట్ ఫార్మాట్ ఉపయోగించండి, ఇది "bsd", "sysv", లేదా "posix". డిఫాల్ట్ "bsd". ఫార్మాట్ మొదటి పాత్ర మాత్రమే ముఖ్యమైనది; ఇది ఎగువ లేదా తక్కువ కేసుగా ఉంటుంది.
-G
--extern-మాత్రమే
బాహ్య చిహ్నాలను మాత్రమే ప్రదర్శిస్తుంది.
-l
--line-సంఖ్యలు
ప్రతి చిహ్నం కోసం, ఒక డీబగ్గింగ్ సమాచారాన్ని ఒక ఫైల్ నేమ్ మరియు లైన్ సంఖ్యను కనుగొనడానికి ప్రయత్నించండి. ఒక నిర్దిష్ట చిహ్న కోసం, గుర్తు యొక్క చిరునామా యొక్క లైన్ సంఖ్య కోసం చూడండి. ఒక నిర్వచించబడని చిహ్న కోసం, గుర్తును సూచిస్తున్న పునస్థాపన ప్రవేశం యొక్క వరుస సంఖ్య కోసం చూడండి. లైన్ సంఖ్య సమాచారం కనుగొనవచ్చు ఉంటే, ఇతర చిహ్నం సమాచారం తర్వాత ప్రింట్.
-n
-v
--numeric విధమైన
సంఖ్యాపరంగా వారి చిరునామాల ద్వారా కాకుండా అక్షరాలను వారి పేర్లతో గుర్తిస్తుంది.
-p
--no-విధమైన
ఏదైనా క్రమంలో చిహ్నాలు క్రమం చేయడానికి ఇబ్బంది లేదు; క్రమంలో వాటిని ప్రింట్ ఎదుర్కొంది.
-p
--portability
డిఫాల్ట్ ఫార్మాట్కు బదులుగా POSIX.2 ప్రామాణిక అవుట్పుట్ ఆకృతిని ఉపయోగించండి. -f posix కు సమానమైనది.
-S
--print పరిమాణం
"Bsd" అవుట్పుట్ ఫార్మాట్ కోసం నిర్వచించిన గుర్తుల ముద్రణ పరిమాణం.
-s
--print-armap
ఆర్కైవ్ సభ్యుల నుండి చిహ్నాలను జాబితా చేసినప్పుడు, ఇండెక్స్ను చేర్చండి: ఏ గుణకాలు అనే పేర్లకు సంబంధించిన నిర్వచనాలను కలిగి ఉన్న మ్యాపింగ్ ( ar లేదా ranlib ద్వారా ఆర్కైవ్లో నిల్వ చేయబడుతుంది ).
-r
--reverse-విధమైన
క్రమబద్ధీకరణ క్రమం (సంఖ్యా లేదా అక్షరమైనా); చివరిని మొదట వద్దాం.
--size విధమైన
పరిమాణం ద్వారా చిహ్నాలు క్రమబద్ధీకరించు. పరిమాణం యొక్క విలువ మరియు తరువాత అధిక విలువతో గుర్తు యొక్క విలువ మధ్య వ్యత్యాసం పరిమాణంగా లెక్కించబడుతుంది. విలువ యొక్క పరిమాణం కంటే గుర్తు యొక్క పరిమాణం ముద్రించబడుతుంది.
-t రాడిక్స్
--radix = radix
గుర్తు విలువలను ప్రింటింగ్ కోసం రాడిక్స్ను రాడిక్స్గా ఉపయోగించండి. ఇది దశాంశ కోసం d , octal కోసం o లేదా హెక్సాడెసిమల్ కొరకు x అయి ఉండాలి.
--target = bfdname
మీ సిస్టమ్ యొక్క డిఫాల్ట్ ఫార్మాట్ కంటే ఇతర ఒక వస్తువు కోడ్ ఫార్మాట్ పేర్కొనండి.
-u
--undefined-మాత్రమే
మాత్రమే నిర్వచించబడని చిహ్నాలు (ఆబ్జెక్ట్ ప్రతి ఆబ్జెక్టుకు) ప్రదర్శించు.
--defined-మాత్రమే
ప్రతి ఆబ్జెక్ట్ ఫైల్ కోసం మాత్రమే నిర్వచించిన చిహ్నాలు ప్రదర్శించు.
-V
--version
Nm మరియు నిష్క్రమణ యొక్క సంస్కరణ సంఖ్యను చూపించు.
-X
Nm యొక్క AIX వర్షన్తో అనుకూలత కొరకు ఈ ఐచ్చికం విస్మరించబడుతుంది. ఇది స్ట్రింగ్ 32_64 తప్పనిసరిగా ఒక పరామితిని తీసుకుంటుంది. AIX nm యొక్క డిఫాల్ట్ మోడ్ -X 32 కి అనుగుణంగా ఉంటుంది, ఇది GNU nm ద్వారా మద్దతు ఇవ్వదు.
--సహాయం
Nm మరియు నిష్క్రమణకు ఎంపికల సారాంశాన్ని చూపించు.
ఇది కూడ చూడు
ar (1), objdump (1), ranlib (1), మరియు binutils కోసం సమాచారం ఎంట్రీలు.
ముఖ్యమైనది: మీ కంప్యుటర్లో కమాండ్ ఎలా ఉపయోగించబడుతుందో చూడుటకు man command ( % man ) ఉపయోగించండి.