


nm(1)                 GNU Development Tools                 nm(1)


NAME
       nm - list symbols from object files.


SYNOPSIS
       nm     [-a|--debug-syms] [-g|--extern-only] [-B]
              [-C|--demangle] [-D|--dynamic] [-s|--print-armap]
              [-o|--print-file-name] [-n|--numeric-sort]
              [-p|--no-sort] [-r|--reverse-sort] [--size-sort]
              [-u|--undefined-only] [-l|--line-numbers] [--help]
              [--version] [-t radix|--radix=radix]
              [-P|--portability] [-f format|--format=format]
              [--target=bfdname] [objfile...]

DESCRIPTION
       GNU nm lists the symbols from object files objfile.  If no
       object files are given as arguments, nm assumes `a.out'.


OPTIONS
       The  long and short forms of options, shown here as alter-
       natives, are equivalent.


       -A

       -o

       --print-file-name
              Precede each symbol by the name of the  input  file
              where it was found, rather than identifying the in-
              put file once only before all of its symbols.


       -a

       --debug-syms
              Display debugger-only symbols; normally  these  are
              not listed.


       -B     The  same  as  --format=bsd (for compatibility with
              the MIPS nm).


       -C

       --demangle
              Decode (demangle) low-level symbol names into user-
              level  names.   Besides removing any initial under-
              score prepended by the system, this makes C++ func-
              tion names readable.





cygnus support           5 November 1991                        1





nm(1)                 GNU Development Tools                 nm(1)


       -D

       --dynamic
              Display  the dynamic symbols rather than the normal
              symbols.  This is only meaningful for  dynamic  ob-
              jects, such as certain types of shared libraries.


       -f format
              Use the output format format, which can be ``bsd'',
              ``sysv'', or ``posix''.  The  default  is  ``bsd''.
              Only  the first character of format is significant;
              it can be either upper or lower case.


       -g

       --extern-only
              Display only external symbols.


       -n

       -v

       --numeric-sort
              Sort symbols numerically by  their  addresses,  not
              alphabetically by their names.


       -p

       --no-sort
              Don't bother to sort the symbols in any order; just
              print them in the order encountered.


       -P

       --portability
              Use the POSIX.2 standard output format  instead  of
              the default format.  Equivalent to ``-f posix''.


       -s

       --print-armap
              When  listing symbols from archive members, include
              the index: a mapping (stored in the archive  by  ar
              or  ranlib) of what modules contain definitions for
              what names.


       -r



cygnus support           5 November 1991                        2





nm(1)                 GNU Development Tools                 nm(1)


       --reverse-sort
              Reverse the sense of the sort (whether  numeric  or
              alphabetic); let the last come first.


       --size-sort
              Sort  symbols by size.  The size is computed as the
              difference between the value of the symbol and  the
              value  of  the  symbol  with the next higher value.
              The size of the symbol is printed, rather than  the
              value.


       -t radix

       --radix=radix
              Use radix as the radix for printing the symbol val-
              ues.  It must be ``d'' for decimal, ``o''  for  oc-
              tal, or ``x'' for hexadecimal.


       --target=bfdname
              Specify  an object code format other than your sys-
              tem's default format.  See objdump(1), for informa-
              tion on listing available formats.


       -u

       --undefined-only
              Display  only  undefined symbols (those external to
              each object file).


       -l

       --line-numbers
              For each symbol, use debugging information  to  try
              to  find a filename and line number.  For a defined
              symbol, look for the line number of the address  of
              the  symbol.  For an undefined symbol, look for the
              line number of a relocation entry which  refers  to
              the  symbol.   If  line  number  information can be
              found, print it after the other symbol information.


       -V

       --version
              Show the version number of nm and exit.


       --help Show a summary of the options to nm and exit.




cygnus support           5 November 1991                        3





nm(1)                 GNU Development Tools                 nm(1)


SEE ALSO
       `binutils' entry in info; The GNU Binary Utilities, Roland
       H. Pesch (October 1991); ar(1), objdump(1), ranlib(1).



COPYING
       Copyright (c) 1991 Free Software Foundation, Inc.

       Permission is granted  to  make  and  distribute  verbatim
       copies  of  this  manual provided the copyright notice and
       this permission notice are preserved on all copies.

       Permission is granted to copy and distribute modified ver-
       sions  of  this  manual  under the conditions for verbatim
       copying, provided that the entire resulting  derived  work
       is  distributed  under  the  terms  of a permission notice
       identical to this one.

       Permission is granted to copy and distribute  translations
       of this manual into another language, under the above con-
       ditions for modified versions, except that this permission
       notice  may  be  included  in translations approved by the
       Free Software Foundation instead of in  the  original  En-
       glish.
































cygnus support           5 November 1991                        4


