Welcome to Linux Knowledge Base and Tutorial
"The place where you learn linux"

 Create an AccountHome | Submit News | Your Account  

Tutorial Menu
Linux Tutorial Home
Table of Contents

· Introduction to Operating Systems
· Linux Basics
· Working with the System
· Shells and Utilities
· Editing Files
· Basic Administration
· The Operating System
· The X Windowing System
· The Computer Itself
· Networking
· System Monitoring
· Solving Problems
· Security
· Installing and Upgrading
· Linux and Windows

Man Pages
Linux Topics
Test Your Knowledge

Site Menu
Site Map
Copyright Info
Terms of Use
Privacy Info
Masthead / Impressum
Your Account

Private Messages

News Archive
Submit News
User Articles
Web Links


The Web

Who's Online
There are currently, 76 guest(s) and 0 member(s) that are online.

You are an Anonymous user. You can register for free by clicking here




       nm [-a|--debug-syms] [-g|--extern-only]
          [-B] [-C|--demangle[=style]] [-D|--dynamic]
          [-S|--print-size] [-s|--print-armap]
          [-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...]


       GNU nm lists the symbols from object files objfile....  If
       no  object  files  are listed as arguments, nm assumes the
       file a.out.

       For each symbol, nm shows:

       ·   The symbol value, in the  radix  selected  by  options
           (see below), or hexadecimal by default.

       ·   The  symbol  type.   At  least the following types are
           used; others are, as well,  depending  on  the  object
           file  format.   If  lowercase, the symbol is local; if
           uppercase, the symbol is global (external).

           "A" The symbol's value is absolute, and  will  not  be
               changed by further linking.

           "B" The  symbol  is  in the uninitialized data section
               (known as BSS).

           "C" The symbol is common.  Common symbols  are  unini­
               tialized data.  When linking, multiple common sym­
               bols may appear with the same name.  If the symbol
               is   defined  anywhere,  the  common  symbols  are
               treated as undefined references.

           "D" The symbol is in the initialized data section.

           "G" The symbol is in an initialized data  section  for
               small  objects.   Some  object file formats permit
               more efficient access to small data objects,  such
               as  a  global  int  variable as opposed to a large
               global array.

           "I" The symbol is an  indirect  reference  to  another
               symbol.   This  is  a  GNU  extension to the a.out
               object file format which is rarely used.

           "N" The symbol is a debugging symbol.
               is  not  defined,  the  value  of  the weak symbol
               becomes zero with no error.

           "W" The symbol is a weak  symbol  that  has  not  been
               specifically tagged as a weak object symbol.  When
               a weak defined symbol  is  linked  with  a  normal
               defined  symbol, the normal defined symbol is used
               with no error.  When a weak  undefined  symbol  is
               linked and the symbol is not defined, the value of
               the weak symbol becomes zero with no error.

           "-" The symbol is a stabs symbol in  an  a.out  object
               file.   In  this case, the next values printed are
               the stabs other field, the stabs desc  field,  and
               the  stab  type.   Stabs  symbols are used to hold
               debugging information.

           "?" The symbol type is unknown, or object file  format

       ·   The symbol name.


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

           Precede each symbol by the name of the input file  (or
           archive  member)  in  which  it was found, rather than
           identifying the input file once only,  before  all  of
           its symbols.

           Display  all symbols, even debugger-only symbols; nor­
           mally these are not listed.

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

           Decode  (demangle)  low-level  symbol names into user-
           level names.  Besides removing any initial  underscore
           prepended by the system, this makes C++ function names
           readable. Different compilers have different  mangling
           styles.  The optional demangling style argument can be
           used to choose an  appropriate  demangling  style  for
           your compiler.

           first character of format is significant;  it  can  be
           either upper or lower case.

           Display only external symbols.

           For  each  symbol, use debugging information to try to
           find a filename and line number.  For a  defined  sym­
           bol,  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 sym­
           bol.  If line number information can be  found,  print
           it after the other symbol information.

           Sort  symbols  numerically  by their addresses, rather
           than alphabetically by their names.

           Do not bother to sort the symbols in any order;  print
           them in the order encountered.

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

           Print size, not the value, of defined symbols for  the
           "bsd" output format.

           When listing symbols from archive members, include the
           index: a mapping (stored in the archive by ar or  ran­
           lib)  of  which  modules contain definitions for which

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

           Sort  symbols  by  size.   The size is computed as the
           default format.

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

           Display only defined symbols for each object file.

           Show the version number of nm and exit.

       -X  This option is ignored for compatibility with the  AIX
           version  of  nm.  It takes one parameter which must be
           the string 32_64.  The default mode of AIX  nm  corre­
           sponds to -X 32, which is not supported by GNU nm.

           Show a summary of the options to nm and exit.


       ar(1),  objdump(1),  ranlib(1),  and  the Info entries for


       Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99,  2000,
       2001, 2002, 2003 Free Software Foundation, Inc.

       Permission  is  granted  to copy, distribute and/or modify
       this document under the terms of the GNU  Free  Documenta­
       tion  License,  Version 1.1 or any later version published
       by the Free Software Foundation; with  no  Invariant  Sec­
       tions,  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-        2003-09-23                      NM(1)



Security Code
Security Code
Type Security Code

Don't have an account yet? You can create one. As a registered user you have some advantages like theme manager, comments configuration and post comments with your name.

Help if you can!

Amazon Wish List

Did You Know?
The Linux Tutorial welcomes your suggestions and ideas.


Tell a Friend About Us

Bookmark and Share

Web site powered by PHP-Nuke

Is this information useful? At the very least you can help by spreading the word to your favorite newsgroups, mailing lists and forums.
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Articles are the property of their respective owners. Unless otherwise stated in the body of the article, article content (C) 1994-2013 by James Mohr. All rights reserved. The stylized page/paper, as well as the terms "The Linux Tutorial", "The Linux Server Tutorial", "The Linux Knowledge Base and Tutorial" and "The place where you learn Linux" are service marks of James Mohr. All rights reserved.
The Linux Knowledge Base and Tutorial may contain links to sites on the Internet, which are owned and operated by third parties. The Linux Tutorial is not responsible for the content of any such third-party site. By viewing/utilizing this web site, you have agreed to our disclaimer, terms of use and privacy policy. Use of automated download software ("harvesters") such as wget, httrack, etc. causes the site to quickly exceed its bandwidth limitation and are therefore expressly prohibited. For more details on this, take a look here

PHP-Nuke Copyright © 2004 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Page Generation: 0.10 Seconds