nm

NM(1)                        GNU Development Tools                       NM(1)



NOME
       nm - elenca i simboli dai file oggetto

SINTASSI
       nm [-a--debug-syms] [-g--extern-only]
          [-B] [-C--demangle[=style]] [-D--dynamic]
          [-S--print-size] [-s--print-armap]
          [-A-o--print-file-name][--special-syms]
          [-n-v--numeric-sort] [-p--no-sort]
          [-r--reverse-sort] [--size-sort] [-u--undefined-only]
          [-t radix--radix=radix] [-P--portability]
          [--target=bfdname] [-fformat--format=format]
          [--defined-only] [-l--line-numbers] [--no-demangle]
          [-V--version] [-X 32_64] [--help]  [objfile...]

DESCRIZIONE
       GNU nm elenca i simboli dai file oggetto objfile....  Se come argomento
       non viene indicato alcun file oggetto, nm prende il file a.out.

       Per ciascun simbolo, nm mostra:

       ·   Il valore del simbolo, nella base selezionata dalle opzioni (vedere
           sotto), o esadecimale per default.

       ·   Il tipo di simbolo. Sono usati almeno i seguenti tipi; altri sono,
           ovviamente, dipendenti dal formato del file oggetto. Se minuscolo,
           il simbolo è locale; se maiuscolo il simbolo è globale (esterno).

           "A" Il valore del simbolo è assoluto, e non verrà cambiato da
               ulteriori collegamenti.

           "B" Il simbolo è nella sezione dati non inizializzata (nota come
               BSS).

           "C" Il simbolo è comune. I simboli comuni sono dati non
               inizializzati.  Quando si collegano, simboli multipli comuni
               possono apparire con lo stesso nome. Se il simbolo è definito
               da qualche parte, i simboli comuni sono trattati come non
               riferimenti non definiti.

           "D" Il simbolo è nella sezione dati inizializzata.

           "G" Il simbolo è in una sezione dati inizializzata per piccoli
               oggetti.  Alcuni formati di file oggetto permettono un accesso
               più efficiente a piccoli oggetti dati, come una variabile
               globale intera rispetto a un grande array globale.

           "I" Il simbolo è un riferimento indiretto a un altro simbolo.
               Questa è un'estensione GNU al formato di file oggetto a.out
               usata raramente.

           "N" Il simbolo è un simbolo di debugging.

           "R" Il simbolo è in una sezione dati a sola lettura.

           "S" Il simbolo è in una sezione dati per piccoli oggetti non
               inizializzata.

           "T" Il simbolo è nella sezione testo (codice).

           "U" Il simbolo non è definito.

           "V" Il simbolo è un oggetto debole. Quando un simbolo definito
               debole è collegato con un simbolo definito normalmente, il
               simbolo definito normale è usato senza errori. Quando un
               simbolo indefinito debole è collegato e il simbolo non è
               definito, il valore del simbolo debole diviene zero senza alcun
               errore.

           "W" Il simbolo è un simbolo debole che non è stato classificato
               specificatamente come oggetto simbolo debole. Quando un simbolo
               definito debole è collegato con un simbolo definito normale,
               il simbolo definito normale è usato senza alcun errore.
               Quando un simbolo indefinito debole è collegato e il simbolo
               non è definito, il valore del simbolo è determinato in una
               modalità dipendente dal sistema senza errori. In alcuni
               sistemi la maiuscola indica che è stato specificato un valore
               di default.

           "-" Il simbolo è un simbolo stab in un file oggetto a.out. In
               questo caso i successivi valori stampati sono il campo stab
               altro, il campo stab desc, e il tipo stab. I simboli stab sono
               usati per mantenere le informazioni di debug.

           "?" Il tipo del simbolo è sconosciuto, o specifico del formato del
               file oggetto.

       ·   Il nome del simbolo.

OPZIONI
       Le opzioni nei formati lungo e corto, qui mostrate come alternative,
       sono equivalenti.

       -A
       -o
       --print-file-name
           Fa precedere a ciascun simbolo il nome del file input (o membro
           dell' archivio) nel quale è stato trovato, invece che identificare
           il file di input solo una volta prima di tutti i suoi simboli.

       -a
       --debug-syms
           Mostra tutti i simboli, anche i simboli esclusivi del debugger;
           normalmente questi non sono elencati.

       -B  Lo stesso che --format=bsd (per compatibilità con MIPS nm).

       -C
       --demangle[=style]
           Decodifica (demangle) i nomi dei simboli di basso livello in nomi a
           livello utente. Oltre a rimuovere ogni underscore iniziale aggiunto
           dal sistema questo rende leggibili i nomi di funzioni C++ .
           Differenti compilatori hanno differenti stili di codifica.
           L'argomento opzionale dello stile di decodifica può essere usato
           per scegliere uno stile appropriato di decodifica per il proprio
           compilatore.

       --no-demangle
           Non decodifica i nomi di simboli di basso livello. Questo è il
           default.

       -D
       --dynamic
           Mostra i simboli dinamici invece dei simboli normali. Ciò è
           significativo solo per gli oggetti dinamici, come certi tipi di
           librerie condivise.

       -f format
       --format=format
           Usa il formato di output format, che può essere "bsd", "sysv", or
           "posix".  The default is "bsd".  Solo il primo carattere di format
           è significativo; esso può essere indifferentemente maiuscolo o
           minuscolo.

       -g
       --extern-only
           Mostra solo i simboli esterni.

       -l
       --line-numbers
           Per ciascun simbolo usa le informazioni di debug per tentare di
           trovare un nome file e un numero di linea. Per un simbolo definito
           cerca il numero di linea dell'indirizzo del simbolo. Per un simbolo
           indefinito cerca il numero di linea di un campo di rilocazione che
           fa riferimento al simbolo. Se l'informazione del numero di linea
           può essere trovata la stampa dopo l'altra informazione sul
           simbolo.

       -n
       -v
       --numeric-sort
           Ordina i simboli numericamente secondo il loro indirizzo, invece
           che alfabeticamente per nome.

       -p
       --no-sort
           Non si preoccupa di ordinare i simboli secondo nessun criterio; li
           stampa nell'ordine in cui li trova.

       -P
       --portability
           Usa il formato di output standard POSIX.2 invece del formato di
           default. Equivalente a -f posix.

       -S
       --print-size
           Stampa la dimensione, non il valore, dei simboli definiti per il
           formato di output "bsd" .

       -s
       --print-armap
           Quando elenca i simboli da membri dell'archivio include l'indice:
           una mappatura (memorizzata nell'archivio da ar o ranlib) di quali
           moduli contengono definizioni per quali nomi.

       -r
       --reverse-sort
           Inverte il senso dell'ordinamento (sia esso numerico o alfabetico);
           mette l'ultimo come primo.

       --size-sort
           Ordina i simboli per dimensione. La dimensione è conteggiata come
           differenza tra il valore del simbolo e il valore del simbolo con il
           successivo valore maggiore. Se è usato il formato di output "bsd"
           viene stampata la dimensione del simbolo invece del valore, e per
           stampare sia dimensione che valore bisogna usare -S .

       --special-syms
           Mostra simboli che hanno un significato speciale target-specific.
           Questi simboli sono normalmente usati dal target per alcuni
           processamenti speciali e normalmente non sono di aiuto quando
           inclusi negli elenchi simboli normali. Per esempio per i target ARM
           questa opzione salterà i simboli di mappatura usati per segnare le
           transizioni tra codice ARM , codice THUMB e dati.

       -t radix
       --radix=radix
           Usa radix come base per stampare i valori dei simboli. Deve essere
           d per il decimale, o per l'ottale o x per l' esadecimale.

       --target=bfdname
           specifica un formato del codice oggetto diverso dal formato di
           default del proprio sistema.

       -u
       --undefined-only
           Mostra solo i simboli non definiti (quelli esterni ai file
           oggetto).

       --defined-only
           Mostra solo i simboli definiti per ciascun file oggetto.

       -V
       --version
           Mostra il numero di versione di nm ed esce.

       -X  Questa opzione è ignorata per compatibilità con la versione AIX
           di nm. Essa prende un parametro che deve essere la stringa 32_64. I
           modi di default di AIX nm corrispondono a -X 32, che non è
           supportato da GNU nm.

       --help
           Mostra un sommario delle opzioni di nm ed esce.

VEDERE ANCHE
       ar(1), objdump(1), ranlib(1), e i campi Info di binutils.

COPYRIGHT
       Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
       2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.

       Permission is granted to copy, distribute and/or modify this document
       under the terms of the GNU Free Documentation License, Version 1.1 or
       any later version published by the Free Software Foundation; with no
       Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
       Texts.  A copy of the license is included in the section entitled ``GNU
       Free Documentation License''.



binutils-2.15.94.0.2.2            2005-08-05                             NM(1)