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, 343 guest(s) and 0 member(s) that are online.

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




       objdump [-a|--archive-headers]
               [-b bfdname|--target=bfdname]
               [-C|--demangle[=style] ]
               [-EB|-EL|--endian={big | little }]
               [-j section|--section=section]
               [-m machine|--architecture=machine]
               [-M options|--disassembler-options=options]


       objdump  displays  information  about  one  or more object
       files.  The options control what particular information to
       display.  This information is mostly useful to programmers
       who are working on the compilation tools,  as  opposed  to
       programmers  who  just  want  their program to compile and

       objfile... are the object files to be examined.  When  you
       specify archives, objdump shows information on each of the
       member object files.


       The long and short forms of options, shown here as  alter­
       natives,  are  equivalent.   At  least one option from the
           addresses do not correspond to the symbol table, which
           can  happen  when  putting  sections   at   particular
           addresses  when using a format which can not represent
           section addresses, such as a.out.

       -b bfdname
           Specify that the object-code  format  for  the  object
           files  is  bfdname.  This option may not be necessary;
           objdump can automatically recognize many formats.

           For example,

                   objdump -b oasys -m vax -h fu.o

           displays summary information from the section  headers
           (-h) of fu.o, which is explicitly identified (-m) as a
           VAX object file in the format produced by  Oasys  com­
           pilers.   You  can list the formats available with the
           -i option.

           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.

           Display debugging information.  This attempts to parse
           debugging  information stored in the file and print it
           out using a C like  syntax.   Only  certain  types  of
           debugging  information  have  been  implemented.  Some
           other types are supported by readelf -w.

           Like -g, but the information is generated in a  format
           compatible with ctags tool.

           Display   the  assembler  mnemonics  for  the  machine
           instructions from objfile.  This option only disassem­
           bles  those  sections  which  are  expected to contain

           ness information, such as S-records.

           Display summary information from the overall header of
           each of the objfile files.

           Specify  that  when  displaying   interlisted   source
           code/disassembly (assumes -S) from a file that has not
           yet been displayed, extend the context to the start of
           the file.

           Display  summary  information from the section headers
           of the object file.

           File  segments  may  be   relocated   to   nonstandard
           addresses, for example by using the -Ttext, -Tdata, or
           -Tbss options to ld.  However, some object  file  for­
           mats, such as a.out, do not store the starting address
           of the file segments.  In those  situations,  although
           ld  relocates the sections correctly, using objdump -h
           to list the file section headers cannot show the  cor­
           rect   addresses.    Instead,   it   shows  the  usual
           addresses, which are implicit for the target.

           Print a summary of the options to objdump and exit.

           Display a list showing all  architectures  and  object
           formats available for specification with -b or -m.

       -j name
           Display information only for section name.

           Label  the  display (using debugging information) with
           the filename and source line numbers corresponding  to
           the object code or relocs shown.  Only useful with -d,
           -D, or -r.

       -m machine
           Specify the architecture  to  use  when  disassembling
           can  be used to select which register name set is used
           during disassembler.  Specifying -M reg-name-std  (the
           default)  will  select  the  register names as used in
           ARM's instruction set documentation, but with register
           13  called  'sp', register 14 called 'lr' and register
           15 called 'pc'.   Specifying  -M  reg-names-apcs  will
           select  the  name  set  used by the ARM Procedure Call
           Standard, whilst specifying -M reg-names-raw will just
           use r followed by the register number.

           There  are also two variants on the APCS register nam­
           ing scheme enabled by -M reg-names-atpcs and  -M  reg-
           names-special-atpcs  which use the ARM/Thumb Procedure
           Call Standard naming conventions.   (Either  with  the
           normal  register names or the special register names).

           This option can also be used for ARM architectures  to
           force  the  disassembler to interpret all instructions
           as Thumb instructions by using the switch  --disassem­
           bler-options=force-thumb.   This  can  be  useful when
           attempting to disassemble thumb code produced by other

           For  the  x86, some of the options duplicate functions
           of the -m switch, but  allow  finer  grained  control.
           Multiple  selections  from the following may be speci­
           fied as a comma separated string.   x86-64,  i386  and
           i8086  select  disassembly for the given architecture.
           intel and att select between  intel  syntax  mode  and
           AT&T  syntax  mode.  addr32, addr16, data32 and data16
           specify the default address  size  and  operand  size.
           These  four options will be overridden if x86-64, i386
           or i8086 appear later in the option  string.   Lastly,
           suffix,  when in AT&T mode, instructs the disassembler
           to print a mnemonic suffix even when the suffix  could
           be inferred by the operands.

           For PPC, booke, booke32 and booke64 select disassembly
           of BookE instructions.  32 and 64 select  PowerPC  and
           PowerPC64 disassembly, respectively.

           For  MIPS, this option controls the printing of regis­
           ter  names  in  disassembled  instructions.   Multiple
           selections  from  the  following may be specified as a
           comma  separated  string,  and  invalid  options   are

               Print  GPR  (general-purpose  register)  names  as
               appropriate for the specified  ABI.   By  default,
               GPR names are selected according to the ABI of the
               binary being disassembled.

               Print  HWR (hardware register, used by the "rdhwr"
               instruction) names as appropriate for the  CPU  or
               architecture  specified  by ARCH.  By default, HWR
               names are selected according to  the  architecture
               and CPU of the binary being disassembled.

               Print  GPR  and  FPR  names as appropriate for the
               selected ABI.

               Print CPU-specific register  names  (CP0  register
               and HWR names) as appropriate for the selected CPU
               or architecture.

           For any of the options listed above, ABI or  ARCH  may
           be specified as numeric to have numbers printed rather
           than names, for the selected types of registers.   You
           can  list  the  available values of ABI and ARCH using
           the --help option.

           Print information that is specific to the object  file
           format.   The  exact  information printed depends upon
           the object file format.  For some object file formats,
           no additional information is printed.

           Print  the  relocation  entries  of the file.  If used
           with -d or -D,  the  relocations  are  printed  inter­
           spersed with the disassembly.

           Print  the  dynamic  relocation  entries  of the file.
           This is only meaningful for dynamic objects,  such  as
           certain types of shared libraries.

           Display the full contents of any sections requested.

           Display  source  code  intermixed with disassembly, if
           possible.  Implies -d.

           When disassembling instructions, print the instruction
           ".stab" debugging symbol-table entries are carried  in
           an ELF section.  In most other file formats, debugging
           symbol-table entries are interleaved with linkage sym­
           bols, and are visible in the --syms output.

           Start  displaying data at the specified address.  This
           affects the output of the -d, -r and -s options.

           Stop displaying data at the specified  address.   This
           affects the output of the -d, -r and -s options.

           Print  the  symbol table entries of the file.  This is
           similar to the information provided by the nm program.

           Print  the  dynamic  symbol table entries of the file.
           This is only meaningful for dynamic objects,  such  as
           certain types of shared libraries.  This is similar to
           the information provided by the nm program when  given
           the -D (--dynamic) option.

           Print the version number of objdump and exit.

           Display  all  available  header information, including
           the symbol table and relocation entries.  Using -x  is
           equivalent to specifying all of -a -f -h -r -t.

           Format  some  lines  for output devices that have more
           than 80 columns.  Also do not  truncate  symbol  names
           when they are displayed.

           Normally  the  disassembly  output will skip blocks of
           zeroes.  This option directs the disassembler to  dis­
           assemble those blocks, just like any other data.


       nm(1), readelf(1), and the Info entries for binutils.





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.11 Seconds