Manual Page Result
0
Command: nm | Section: 1 | Source: Digital UNIX | File: nm.1.gz
nm(1) General Commands Manual nm(1)
NAME
nm - Name list dump of object files
SYNOPSIS
nm [-B|-P|-S] [-AabdfhnoprTVvwx] [-e|-g|-u] [-t format] [-man-
gled_name_only] [-mangled_name_also] [file...]
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
nm: XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about in-
dustry standards and associated tags.
OPTIONS
The nm command accepts both XPG4-UNIX standard options and DIGITAL ex-
tensions.
The following options control the format of the output: Prints output
in OSF format. [DIGITAL] Prints output in Berkeley (4.3 BSD) format.
This format produces an address or value field followed by a letter
showing what section the symbol is located in. The third and final
field is the name of the symbol. Prints output in a portable (POSIX)
format. This format prints lines containing each symbol's name, type
(single letter), value, and size. [DIGITAL] Prints output in System V
format.
The following options control the contents of the output, how sorting
is done, and how numeric values are printed. Note that the format that
is in effect influences the results of many of these options: Prints
the full pathname or library name of an object on each line. [DIGI-
TAL] Prints full debugging information. [DIGITAL] For Berkeley (-B)
format only, prints the value field in octal. Equivalent to -t o.
[DIGITAL] Prints the value field in decimal. Equivalent to -t d.
Prints only external and static symbol information. Prints only exter-
nal symbol information. [DIGITAL] Suppresses the printing of headers.
[DIGITAL] For Berkeley (-B) format, sorts all symbols by value. For
System V (-S) format, sorts external symbols by name. For other for-
mats, sorts all symbols by name. Prints numeric values in octal
(equivalent to -t o).
[DIGITAL] For Berkeley format (-B), prepends the filename to
each symbol (equivalent to -A). [DIGITAL] Prints symbols in
the order in which they are found in the file. [DIGITAL] Re-
verses the order of a value or name sort. [DIGITAL] Truncates
long names, inserting an asterisk (*) as the last printed char-
acter. Writes each numeric value in the specified format as
follows: The offset is written in decimal. Equivalent to -d.
The offset is written in octal. Equivalent to -o. The offset is
written in hexadecimal. Equivalent to -x. Prints only undefined
symbols. [DIGITAL] Prints version information on stderr.
Sorts output by value instead of alphabetically.
[DIGITAL] For System V format (-S), sorts external symbols by
value. [DIGITAL] Identifies weak symbols using an asterisk
(*). For the default, portable (-P), and Berkeley (-B) formats,
the asterisk follows the symbol type letter. For System V (-S),
an additional column is added to the end of each line containing
an asterisk for weak symbols. Prints numeric values in hexadec-
imal. Equivalent to -t x.
[DIGITAL] The DEC C++ compiler encodes type information in function,
template, variable, and virtual table names to enable type-safe link-
ages. This encoding is called "name mangling." The following options
can be used to instruct the nm command to print either the original
name (that is, the demangled name), the mangled name, or both, by spec-
ifying one of the following options. By default, nm shows the deman-
gled names only. [DIGITAL] Prints only the mangled name. [DIGI-
TAL] Prints both the mangled and the demangled names.
DESCRIPTION
The nm command prints formatted listings of the symbol and external
sections of an object file symbol table. A file can be an object file,
an archive library, or a shared library. If you do not specify a file,
this command assumes a.out.
The nm tool supports four output formats: OSF (the default) [DIGI-
TAL] Berkeley 4.3 BSD (-B option) [DIGITAL] System V (-S option)
Portable (-P option)
The following default behaviors are the same for all four formats: Sort
by name Show external and static symbols Output in hexadecimal
The only exception to these defaults is that numbers in OSF format are
in decimal by default.
Each format has a distinctive output style and can influence the re-
sults of some of the options that affect content, how sorting is done,
and how numeric values are printed, as explained in the OPTIONS sec-
tion.
Output
If symbolic information is present in the input files, nm writes the
following information for each file or archive member by default: Sym-
bol name Value of the symbol Symbol type Size associated with the sym-
bol, if applicable
For example:
Name Value Type Size
_gp | 0000005368742016 | A | 0000000000000008 exit
| 0000004831842368 | U | 0000000000000008 main |
0000004831842816 | T | 0000000000000008
For the default, portable (-P), and Berkeley (-B) formats, single char-
acters are used as an abbreviation for symbol types. Uppercase charac-
ters represent external symbols, and lowercase letters represent local
symbols.
The symbol types and their abbreviations are as follows: External ab-
solute Local absolute External zeroed data Local zeroed data [DIGI-
TAL] Common External initialized data Local initialized data [DIGI-
TAL] Small common [DIGITAL] External small initialized data [DIGI-
TAL] Local small initialized data [DIGITAL] TLS common [DIGITAL] TLS
initialized data [DIGITAL] TLS zeroed data [DIGITAL] Nil storage
class, compiler internal usage [DIGITAL] Read-only constants [DIGI-
TAL] Local read-only constants [DIGITAL] External read-only data
[DIGITAL] Local read-only data [DIGITAL] External small zeroed data
[DIGITAL] Local small zeroed data External text Local text External
undefined [DIGITAL] External small undefined [DIGITAL] No storage al-
located
[DIGITAL] If the -a option is specified, an expanded listing in System
V format is written, formatted with the following columns: The symbol
or external name Value field for the symbol or external, usually an ad-
dress or interesting debugging information The symbol type The symbol's
declaration The symbol's size The symbol's index field The symbol's
storage class
SEE ALSO
Functions: ar(1), c89(1)
Standards: standards(5)
Programmer's Guide, Assembly Language Programmer's Guide
nm(1)