Nm - εντολή Linux - εντολή Unix

nm - σύμβολα λίστας από αρχεία αντικειμένων

ΣΥΝΟΨΗ

nm [ | --debug-syms ] [ -g | - εξωτερικό μόνο ]
[ ] [ -C1 --αποκάλυψη [= στυλ ]] [ -D | --δυναμική ]
[ -S | - μέγεθος εκτύπωσης ] [ -s | --print-armap ]
[ -A | -ο | -print-file-name ]
[ -n | -v | --numeric-sort ] [ -p | --no-ταξινόμηση ]
[ -r | --αναστροφή-ταξινόμηση ] [- μεγέθυνση ] [ -u | - μόνο ]
[ -t radix | -radix = radix ] [ -P | - δυνατότητα μεταβίβασης ]
[ --target = όνομα bfd ] [ -f format | --format = format ]
[ --defined-only ] [ -l | - γραμμές-αριθμοί ] [ --απομακρύνα ]
[ -V | --version ] [ -X 32_64 ] [ --help ] [ objfile ...]

ΠΕΡΙΓΡΑΦΗ

Το GNU nm απαριθμεί τα σύμβολα από τα αρχεία αντικειμένων objfile .... Αν κανένα αρχείο αντικειμένου δεν παρατίθεται ως παράθεση, το nm αναλαμβάνει το αρχείο a.out .

Για κάθε σύμβολο, το nm δείχνει:

*

Η τιμή του συμβόλου, στην ακτίνα που επιλέγεται από τις επιλογές (βλ. Παρακάτω), ή δεκαεξαδικό από προεπιλογή.

*

Ο τύπος συμβόλου. Χρησιμοποιούνται τουλάχιστον οι ακόλουθοι τύποι. άλλοι είναι, επίσης, ανάλογα με τη μορφή αρχείου αντικειμένων. Εάν είναι πεζά, το σύμβολο είναι τοπικό. εάν είναι κεφαλαία, το σύμβολο είναι σφαιρικό (εξωτερικό).

ΕΝΑ

Η τιμή του συμβόλου είναι απόλυτη και δεν θα αλλάξει με περαιτέρω σύνδεση.

σι

Το σύμβολο βρίσκεται στην ενότητα μη αρχικοποιημένων δεδομένων (γνωστή ως BSS).

ντο

Το σύμβολο είναι κοινό. Τα συνήθη σύμβολα είναι μη αρχικοποιημένα δεδομένα. Κατά τη σύνδεση, μπορούν να εμφανιστούν πολλαπλά κοινά σύμβολα με το ίδιο όνομα. Εάν το σύμβολο ορίζεται οπουδήποτε, τα κοινά σύμβολα αντιμετωπίζονται ως απροσδιόριστες αναφορές.

ρε

Το σύμβολο βρίσκεται στην ενότητα προετοιμασμένων δεδομένων.

σολ

Το σύμβολο βρίσκεται σε μια αρχική ενότητα δεδομένων για μικρά αντικείμενα. Ορισμένες μορφές αρχείου αντικειμένων επιτρέπουν πιο αποτελεσματική πρόσβαση σε μικρά αντικείμενα δεδομένων, όπως μια παγκόσμια μεταβλητή int σε αντίθεση με έναν μεγάλο παγκόσμιο πίνακα.

Εγώ

Το σύμβολο είναι έμμεση αναφορά σε άλλο σύμβολο. Αυτή είναι μια προέκταση του GNU στη μορφή αρχείου αντικειμένου a.out που σπάνια χρησιμοποιείται.

Ν

Το σύμβολο είναι ένα σύμβολο εντοπισμού σφαλμάτων.

R

Το σύμβολο βρίσκεται σε μια ενότητα δεδομένων μόνο για ανάγνωση.

μικρό

Το σύμβολο βρίσκεται σε μια μη αρχικοποιημένη ενότητα δεδομένων για μικρά αντικείμενα.

Τ

Το σύμβολο βρίσκεται στην ενότητα κειμένου (κώδικας).

U

Το σύμβολο είναι απροσδιόριστο.

V

Ένα σύμβολο είναι ένα αδύναμο αντικείμενο. Όταν ένα αδύναμο καθορισμένο σύμβολο συνδέεται με ένα κανονικό καθορισμένο σύμβολο, το κανονικό καθορισμένο σύμβολο χρησιμοποιείται χωρίς σφάλμα. Όταν συνδέεται ένα ασθενές αόριστο σύμβολο και το σύμβολο δεν ορίζεται, η τιμή του αδύναμου συμβόλου καθίσταται μηδενική χωρίς κανένα σφάλμα.

W

Το σύμβολο είναι ένα αδύναμο σύμβολο που δεν έχει επισημανθεί ειδικά ως σύμβολο ασθενούς αντικειμένου. Όταν ένα αδύναμο καθορισμένο σύμβολο συνδέεται με ένα κανονικό καθορισμένο σύμβολο, το κανονικό καθορισμένο σύμβολο χρησιμοποιείται χωρίς σφάλμα. Όταν συνδέεται ένα ασθενές αόριστο σύμβολο και το σύμβολο δεν ορίζεται, η τιμή του αδύναμου συμβόλου καθίσταται μηδενική χωρίς κανένα σφάλμα.

-

Το σύμβολο είναι ένα σύμβολο στοίβας σε ένα αρχείο αντικειμένου a.out. Σε αυτή την περίπτωση, οι επόμενες τιμές που εκτυπώνονται είναι οι χαρακτήρες άλλα πεδία, το πεδίο στρωμάτων desc και ο τύπος stab. Τα σύμβολα Stabs χρησιμοποιούνται για τη διατήρηση πληροφοριών σφαλμάτων.

;

Ο τύπος συμβόλου είναι άγνωστος ή συγκεκριμένος τύπος αρχείου αντικειμένων.

*

Το όνομα του συμβόλου.

ΕΠΙΛΟΓΕΣ

Οι μακροπρόθεσμες και βραχείες μορφές επιλογών, που παρουσιάζονται εδώ ως εναλλακτικές λύσεις, είναι ισοδύναμες.

-ΕΝΑ

-print-file-name

Προκαλέστε κάθε σύμβολο από το όνομα του αρχείου εισόδου (ή μέλους αρχειοθέτησης) στο οποίο βρέθηκε, αντί να προσδιορίσετε μόνο μία φορά το αρχείο εισόδου, πριν από όλα τα σύμβολά του.

-ένα

- σκουλήκια

Εμφάνιση όλων των συμβόλων, ακόμη και των συμβόλων μόνο για τον εντοπισμό σφαλμάτων. συνήθως δεν αναφέρονται.

-ΣΙ

Το ίδιο με το --format = bsd (για συμβατότητα με το MIPS nm ).

-ΝΤΟ

--ανακατεύει [= στυλ ]

Αποκωδικοποιήστε τα ονόματα συμβόλων χαμηλού επιπέδου σε ονόματα σε επίπεδο χρήστη. Εκτός από την αφαίρεση οποιουδήποτε αρχικού υπογράμματος που υποτίθεται από το σύστημα, αυτό καθιστά τα ονόματα των λειτουργιών C ++ αναγνώσιμα. Διαφορετικοί μεταγλωττιστές έχουν διαφορετικά στυλ μαγκλάνγκ. Το προαιρετικό όρισμα στυλ απομυθοποίησης μπορεί να χρησιμοποιηθεί για να επιλέξετε ένα κατάλληλο στυλ demangling για τον μεταγλωττιστή σας.

- μη-παραμερισμό

Μην υποβιβάζετε ονόματα συμβόλων χαμηλού επιπέδου. Αυτή είναι η προεπιλογή.

-ΡΕ

--δυναμικός

Εμφανίστε τα δυναμικά σύμβολα και όχι τα κανονικά σύμβολα. Αυτό έχει νόημα μόνο για δυναμικά αντικείμενα, όπως ορισμένους τύπους κοινόχρηστων βιβλιοθηκών.

-f μορφή

- format = format

Χρησιμοποιήστε τη μορφή μορφής εξόδου, η οποία μπορεί να είναι "bsd", "sysv" ή "posix". Η προεπιλογή είναι "bsd". Μόνο ο πρώτος χαρακτήρας της μορφής είναι σημαντικός. μπορεί να είναι είτε κεφαλαία είτε πεζά.

-σολ

- μόνο εξωτερικά

Εμφάνιση μόνο εξωτερικών συμβόλων.

-μεγάλο

- γραμμών-αριθμών

Για κάθε σύμβολο, χρησιμοποιήστε πληροφορίες εντοπισμού σφαλμάτων για να προσπαθήσετε να βρείτε ένα όνομα αρχείου και έναν αριθμό γραμμής. Για ένα καθορισμένο σύμβολο, αναζητήστε τον αριθμό γραμμής της διεύθυνσης του συμβόλου. Για ένα απροσδιόριστο σύμβολο, αναζητήστε τον αριθμό γραμμής μιας καταχώρησης μετεγκατάστασης που αναφέρεται στο σύμβολο. Εάν μπορείτε να βρείτε πληροφορίες αριθμού γραμμής, εκτυπώστε το μετά τις άλλες πληροφορίες συμβόλων.

-v

- αριθμητική ταξινόμηση

Τα σύμβολα ταξινομούνται αριθμητικά σύμφωνα με τις διευθύνσεις τους, και όχι αλφαβητικά με τα ονόματά τους.

- όχι-είδος

Μην κάνετε τον κόπο να ταξινομήσετε τα σύμβολα με οποιαδήποτε σειρά. να τα εκτυπώσετε με τη σειρά που έχετε συναντήσει.

--φορητότητα

Χρησιμοποιήστε την τυπική μορφή εξόδου POSIX.2 αντί για την προεπιλεγμένη μορφή. Ισοδύναμο με το -f posix .

-ΜΙΚΡΟ

- μέγεθος εκτύπωσης

Μέγεθος εκτύπωσης καθορισμένων συμβόλων για τη μορφή εξόδου "bsd".

-μικρό

-print-armap

Κατά την καταχώριση συμβόλων από μέλη αρχειοθέτησης, συμπεριλάβετε το ευρετήριο: μια χαρτογράφηση (αποθηκευμένη στο αρχείο από ar ή ranlib ) των οποίων οι ενότητες περιέχουν ορισμούς για τα ονόματα.

-r

--αναστροφή

Αντιστρέψτε τη σειρά του είδους (είτε αριθμητική είτε αλφαβητική). ας έρθει η πρώτη.

- μέγεθος μεγέθους

Ταξινόμηση συμβόλων ανά μέγεθος. Το μέγεθος υπολογίζεται ως η διαφορά μεταξύ της τιμής του συμβόλου και της τιμής του συμβόλου με την επόμενη υψηλότερη τιμή. Το μέγεθος του συμβόλου είναι τυπωμένο και όχι η τιμή.

-t radix

-radix = radix

Χρησιμοποιήστε radix ως radix για την εκτύπωση των τιμών των συμβόλων. Πρέπει να είναι d για δεκαδικό, o για οκταδικό ή x για δεκαεξαδικό.

--target = bfdname

Καθορίστε μια μορφή κώδικα αντικειμένου διαφορετική από την προεπιλεγμένη μορφή του συστήματός σας.

-u

- δεν ορίζεται μόνο

Εμφάνιση μόνο αόριστων συμβόλων (εκείνων που είναι εξωτερικά σε κάθε αρχείο αντικειμένων).

- καθορισμένο μόνο

Εμφάνιση μόνο καθορισμένων συμβόλων για κάθε αρχείο αντικειμένων.

-V

--εκδοχή

Εμφάνιση του αριθμού έκδοσης nm και έξοδο.

Αυτή η επιλογή αγνοείται για συμβατότητα με την έκδοση AIX του nm . Παίρνει μια παράμετρο που πρέπει να είναι η συμβολοσειρά 32_64 . Ο προεπιλεγμένος τρόπος λειτουργίας του AIX nm αντιστοιχεί στο -X 32 , το οποίο δεν υποστηρίζεται από το GNU nm .

--βοήθεια

Δώστε μια περίληψη των επιλογών σε nm και έξοδο.

ΔΕΙΤΕ ΕΠΙΣΗΣ

ar (1), objdump (1), ranlib (1) και τις καταχωρίσεις Info για binutils .

Σημαντικό: Χρησιμοποιήστε την εντολή man ( % man ) για να δείτε πώς χρησιμοποιείται μια εντολή στον υπολογιστή σας.