aboutsummaryrefslogblamecommitdiffhomepage
path: root/explore-elf.txt
blob: 88c42f0c1552ed8fc0e7fe3d3ebb9ccf0339ea12 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13












                                                                                
                                                            




































                                                                                
.:: Explore Elf ::.
--------------------------------------------------------------------------------

# toc
------
  |readelf|
  |objdump|
  |nm|
  |c++filt|

# readelf(1)                                                           *readelf*
=============
  args:
    -W|--wide     wide output, dont break output at 80 chars
    -h            print ELF header
    -S            print sections headers
    -l            print program headers
    -d            print dynamic section
    -s            print symbol table

# objdump(1)                                                           *objdump*
=============
  args:
    -M intel                use intil syntax
    -d                      disassemble text section
    -D                      disassemble all sections
    -S                      mix disassembly with source code
    -C                      demangle
    -j <section>            display info for section
    --[no-]show-raw-insn    [dont] show object code next to disassembly

  ## disassemble .plt section
  objdump -j .plt -d <elf_file>

# nm(1)                                                                     *nm*
========
  args:
    -C          demangle
    -u          undefined only

# c++filt(1)                                                           *c++filt*
=============
  ## demangle symbol
  c++-filt <symbol_str>

  ## demangle stream
  nm <elf_file> | c++filt

--------------------------------------------------------------------------------
vim:sts=2:et:tw=80:cc=80:fo+=t:ft=help