פיקוד פיקוד יוניקס

nm - רשימת סמלים מקבצי אובייקטים

תַקצִיר

ננומטר [ - | --debug-syms ] [ -g | --extern בלבד ]
[ -B ] [ -C | --demangle [= style ]] [ -D | - דינמיקה
[ -S | - גודל הדפסה ] [ -s | - הדפסה- armap ]
[ -A - - print-file-name ]
[ -n -v - numeric-sort ] [ -p | - לא-מיון ]
[ -r | - הפוך-מיון ] [ --size-sort ] [ -u | - מוגדר מראש בלבד ]
[ -t radix | - רדיקס = רדיקס ] [ -P | - היכולת להימכר ]
[ --target = bfdname ] [ -f format | - פורמט = פורמט ]
[- הגדרה בלבד ] [ -l | - מספר שורות ] [ --no-demangle ]
[ -V | - גרסה ] [ -X 32_64 ] [- עזרה ] [ objfile ...]

תיאור

GNU nm מפרט את הסמלים מקבצי אובייקטים objfile .... אם לא מוצגים קובצי אובייקטים כארגומנטים, nm מניח את הקובץ a.out .

עבור כל סמל, nm מראה:

*

ערך הסמל, ברדיקס שנבחר על ידי אפשרויות (ראה להלן), או הקסדצימלי כברירת מחדל.

*

סוג הסוג. לפחות הסוגים הבאים משמשים; אחרים, כמו גם, בהתאם לפורמט קובץ אובייקט. אם האותיות קטנות, הסמל הוא מקומי; אם האותיות רישיות, הסמל הוא גלובלי (חיצוני).

א

הערך של הסמל הוא מוחלט, ולא ישתנה על ידי קישור נוסף.

ב

הסמל נמצא בקטע הנתונים לא מאותחל (המכונה BSS).

ג

הסמל נפוץ. סמלים נפוצים הם נתונים לא מסודרים. בעת הקישור, עשויים להופיע מספר סמלים נפוצים עם אותו שם. אם הסמל מוגדר בכל מקום, הסמלים הנפוצים מטופלים כהפניות לא מוגדרות.

ד

הסמל נמצא במקטע הנתונים המאומת.

ז

הסמל נמצא בקטע נתונים מאותחל עבור אובייקטים קטנים. כמה פורמטים של קובצי אובייקט מאפשרים גישה יעילה יותר לאובייקטים של נתונים קטנים, כגון משתנה גלובלי לעומת מערך גלובלי גדול.

אני

הסמל הוא התייחסות עקיפה לסמל אחר. זהו GNUextension לתבנית קובץ האובייקט a.out המשמשת לעתים נדירות בלבד.

N

הסמל הוא סמל באגים.

R

הסמל נמצא בקטע נתונים לקריאה בלבד.

S

הסמל נמצא בקטע נתונים לא מאותחל עבור אובייקטים קטנים.

T

הסמל מופיע בקטע טקסט (קוד).

U

הסמל אינו מוגדר.

אשר

סמל הוא אובייקט חלש. כאשר סמל מוגדר חלש מקושר עם סמל מוגדר רגיל, הסמל המוגדר הרגיל נמצא בשימוש ללא שגיאות. כאשר סמל חלש לא מוגדר מקושר והסמל אינו מוגדר, הערך של הסמל החלש הופך לאפס ללא שגיאות.

W

הסמל הוא סמל חלש שלא תויג במיוחד כסמל אובייקט חלש. כאשר סמל מוגדר חלש מקושר עם סמל מוגדר רגיל, הסמל המוגדר הרגיל נמצא בשימוש ללא שגיאות. כאשר סמל חלש לא מוגדר מקושר והסמל אינו מוגדר, הערך של הסמל החלש הופך לאפס ללא שגיאות.

-

הסמל הוא סמל דקירות בקובץ אובייקט a.out. במקרה זה, הערכים הבאים המודפסים הם דקירות שדות אחרים, שדה דקירות דקירה, ואת סוג הדקירה. סמלי הדקירים משמשים לאחזקת מידע איתור באגים.

?

סוג הסמל אינו ידוע, או תבנית קובץ אובייקט ספציפית.

*

שם הסימן.

אפשרויות

צורות האפשרויות הארוכות והקצרות, המוצגות כאן כחלופות, שוות ערך.

- שם קובץ-הדפסה

הקדם כל סמל על ידי שם קובץ הקלט (או חבר הארכיון) שבו הוא נמצא, במקום לזהות את קובץ הקלט פעם אחת בלבד, לפני כל הסמלים שלו.

- Debug-syms

הצג את כל הסמלים, אפילו סמלים של הבאגים בלבד; בדרך כלל אלה אינם רשומים.

-B

כמו - format = bsd (עבור תאימות עם MIPS ננומטר ).

-C

--demangle [= style ]

פענוח ( demangle ) ברמה נמוכה שמות הסמלים לשמות ברמת המשתמש. מלבד הסרת כל הדגשה הראשונית prepended על ידי המערכת, זה עושה C + + שמות פונקציה קריא. קומפיילרים שונים יש סגנונות שונים mangling. ניתן להשתמש בארגומנט סגנון הסגנון האופציונלי לבחירת סגנון הדחה מתאים עבור המהדר שלך.

- לא דמונגל

אל תפשוט שמות סמלים ברמה נמוכה. זוהי ברירת המחדל.

-D

--דִינָמִי

הצג את הסמלים הדינמיים במקום את הסמלים הרגילים. זה רק משמעותי עבור אובייקטים דינמיים, כגון סוגים מסוימים של ספריות משותפות.

פורמט

- פורמט = פורמט

השתמש בפורמט פורמט פלט, אשר יכול להיות "bsd", "sysv", או "posix". ברירת המחדל היא "bsd". רק התו הראשון של הפורמט הוא משמעותי; זה יכול להיות גם במקרה העליון או התחתון.

-g

- בלבד

הצג רק סמלים חיצוניים.

-L

--מספרי שורות

עבור כל סמל, השתמש במידע הבאגים כדי לנסות למצוא שם קובץ ומספר שורה. לקבלת סמל מוגדר, חפש את מספר השורה של הכתובת של הסמל. לקבלת סמל לא מוגדר, חפש את מספר השורה של ערך רילוקיישן המתייחס לסמל. אם ניתן למצוא מידע על מספר הקו, הדפס אותו לאחר פרטי הסמלים האחרים.

-n

-v

- מיון מספרי

מיין סמלים מספרית לפי כתובות שלהם, ולא לפי סדר אלפביתי לפי השמות שלהם.

-p

- לא למיין

אל תטרחו למיין את הסמלים בכל סדר; להדפיס אותם בסדר נתקל.

-P

--הִטַלטְלוּת

השתמש בתבנית הפלט הסטנדרטי POSIX.2 במקום בתבנית ברירת המחדל. השווה ל - fusix .

-S

- גודל ההדפסה

הדפס גודל של סמלים מוגדרים עבור פורמט הפלט "bsd".

- s

- דפוס armap

בעת רישום הסמלים מחברי הארכיון, כלול את האינדקס: מיפוי (מאוחסן בארכיון על ידי ar או רנליב ) של אילו מודולים יש הגדרות עבור אילו שמות.

-r

- הפוך-מיון

הפוך את סדר המיון (אם מספרי או אלפביתי); תן האחרון לבוא הראשון.

- מיון-מיון

מיין סמלים לפי גודל. הגודל מחושב כהפרש בין ערך הסמל לבין הערך של הסמל עם הערך הגבוה הבא. גודל הסמל מודפס במקום הערך.

- רדיקס

- רדיקס = רדיקס

השתמש ברדיקס כרדיקס להדפסת ערכי הסמלים. זה חייב להיות d עבור עשרוני, o עבור אוקטלי, או x עבור הקסדצימלי.

- טארגט = bfdname

ציין תבנית קוד אובייקט שאינה תבנית ברירת המחדל של המערכת.

-u

- מוגדר מראש בלבד

הצג רק סמלים לא מוגדרים (אלה חיצוניים לכל קובץ אובייקט).

- הגדרה בלבד

הצגת סמלים מוגדרים רק עבור כל קובץ אובייקט.

-V

--גִרְסָה

הצג את מספר הגירסה של nm ויציאה.

-איקס

אפשרות זו מתעלמת מהתאימות לגירסת AIX של nm . זה לוקח פרמטר אחד אשר חייב להיות מחרוזת 32_64 . מצב ברירת המחדל של NIX AIX מתאים ל- X 32 , שאינו נתמך על ידי GNU nm .

--עֶזרָה

הצג סיכום של האפשרויות ל- nm ולצאת.

ראה גם

ar (1), objdump (1), ranlib (1) ורשומות Info עבור binutils .

חשוב: השתמש בפקודת הגבר ( % man ) כדי לראות כיצד נעשה שימוש בפקודה במחשב הספציפי שלך.