NIMI
objdump − tulosta tietoja objektitiedostoista.
YLEISKATSAUS
objdump
[−a|−−archive−headers] [−b bfdnimi | −−target=bfdnimi] [−C|−−demangle] [−−debugging] [−d|−−disassemble] [−D|−−disassemble-all] [−−disassemble−zeroes] [−EB|−EL|−−endian={big|little}] [−f|−−file−headers] [−h|−−section−headers | −−headers] [−i|−−info] [−j kappale | −−section=kappale] [−l|−−line−numbers] [−m konetyyppi | −−architecture=konetyyppi] [−−prefix−addresses] [−r|−−reloc] [−R|−−dynamic−reloc] [−s|−−full−contents] [−S|−−source] [−−[no−]show−raw−insn] [−−stabs] [−t|−−syms] [−T|−−dynamic−syms] [−x|−−all−headers] [−−start−address=osoite] [−−stop−address=osoite] [−−adjust−vma=siirros] [−−version] [−−help] objtiedostot...
KUVAUS
objdump tulostaa tietoja yhdestä tai useammasta objektitiedostosta. Komentorivioptioilla voi vaikuttaa siihen, mitä tietoja tulostetaan. Tiedot ovat hyödyllisiä ennenkaikkea ohjelmoijille, jotka työskentelevät kääntäjien ja muiden binäärityökalujen kanssa, ei niinkään normaaleille ohjelmoijille, jotka haluavat vain kääntää ja ajaa ohjelmiaan.
objtiedostot... ovat tarkastelun kohteena olevat objektitiedostot. Jos kohteena on arkisto, objdump tulostaa tiedot jokaisesta arkistossa olevasta objektitiedostosta.
OPTIOT
Jos optiosta on esitetty sekä pitkä että lyhyt muoto, niin ne ovat toiminnaltaan identtisiä. Ainakin yksi optio −l (−−line−numbers) option lisäksi tulee antaa.
−a |
−−archive−headers
Jos joku tai jotkut objtiedostoista on arkisto, niin tulostetaan arkiston otsikkotiedot (tulostusmuoto on sama kuin komennossa ’ls −l’). Tietojen, jotka voi listata myös ’ar tv’ komennolla, lisäksi ’objdump −a’ tulostaa myös jokaisen tiedoston objektiformaatin.
−−adjust−vma=siirros
Kun tietoja tulostetaan, lisätään siirros (offset) kaikkiin kappaleosoitteisiin (section address). Tämä on hyödyllistä, jos kappaleosoite ei täsmää symbolitaulun kanssa. Tämä on mahdollista, jos kappale on sijoitettu tiettyyn osoitteeseen ja jos formaatti ei sisällä esitystä kappaleosoitteelle (esim. a.out formaatti).
−b bfdnimi
−−target=bfdnimi
Määrää objektitiedostojen objektikoodin formaatiksi bfdnimi. Tämä ei välttämättä ole tarpeen; objdump osaa tunnistaa automaattisesti useita erilaisia formaatteja. Esimerkiksi
objdump −b oasys −m vax −h fu.o
tulostaa yhteenvetotiedot kappaleotsikoista (section headers) (’−h’) tiedostosta ’fu.o’, joka on identifioitu (’−m’) Vax-objektitiedostoksi formaatissa, jonka on tuottanut Oasys-kääntäjä. Kaikki tuetut formaatit voi listata optiolla ’−i’.
−C |
−−demangle
Dekoodaa (demangle) matalan tason symbolinimet ymmärrettävämpään muotoon. Nimiä edeltävän alaviivan poistamisen lisäksi tämä optio muuntaa C++ -funktionimet selkeämpään muotoon.
−−debugging
Tulostaa objektitiedostoon talletettuja debuggaustietoja. Tiedot tulostetaan C-tyyppisellä syntaksilla. Vain tiettyjen debuggaustietojen tulostus on implementoitu.
−d |
−−disassemble
Tulostaa assemblermuistikkaita (mnemonics) objtiedoston konekoodista. Tämä optio tulostaa vain ne tiedoston kappaleet (section), joiden voidaan olettaa sisältävän ohjelmakoodia.
−D |
−−disassemble-all
Kuten −d, mutta kaikkien kappaleiden sisältö tulostetaan, ei vain niiden kappaleiden, joiden oletetaan sisältävän ohjelmakoodia.
−−prefix−addresses
Kun tulostetaan assemblermuistikkaita, tulostetaan täydellinen osoite joka riville. Tämä on vanha disassemblerin formaatti.
−−disassemble−zeroes
Normaalisti, jos disassembler kohtaa lohkon nollia, se hyppää niiden yli. Tämä optio määrää disassemblerin tulostamaan myös nämä lohkot samalla tavoin kuin muunkin datan.
−EB |
||
−EL |
−−endian={big|little}
Määrää objektitiedostojen tavujärjestyksen (endianess). Tämä vaikuttaa vain disassembleriin. Tämä voi olla hyödyllistä, jos disassembleroitava formaatti ei sisällä tietoa tavujärjestyksestä, kuten esimerkiksi S-record formaatti.
−f |
−−file−headers
Tulosta yhteenvetotiedot jokaisen objtiedoston otsikosta.
−h |
−−section−headers
−−headers
Tulosta yhteenvetotiedot jokaisesta kappaleesta (section) objektitiedostossa.
−−help |
Tulosta yhteenveto objdump ohjelman optioista ja poistu ohjelmasta. | ||
−i |
|||
−−info |
Tulosta kaikki arkkitehtuurit ja objektitiedostojen formaatit, jotka voidaan antaa −b tai −m optioille. |
−j nimi
−−section=nimi
Tulosta tietoja vain kappaleesta nimi.
−l |
−−line−numbers
Tulosta lähdekooditiedoston nimi ja rivinumero, jolta tulostettava objektikoodi on peräisin. Tiedot saadaan objektitiedoston debuggaustiedoista. Tämä optio on järkevä ainoastaan optioiden −d, −D, tai −r kanssa.
−m
konetyyppi
−−architecture=konetyyppi
Määrää arkkitehtuuri, jota käytetään objektitiedoston disassemblointiin. Tämä on hyödyllistä, kun disassembloidaan objektitiedostoa, joka ei sisällä tietoa arkkitehtuurista (esim. S-record). Tuetut arkkitehtuurit voi listata optiolla −i.
−r |
−−reloc
Tulosta objektitiedoston uudelleensijoitustiedot (relocation entries). Jos tätä optiota käytetään yhdessä −d option kanssa, tiedot tulostetaan disassemblerlistauksen seassa symboliin viittauksen yhteydessä.
−R |
−−dynamic−reloc
Tulosta dynaamiset uudelleensijoittamistiedot (relocation entries). Tämä optio on järkevä vain dynaamisille objekteille, kuten eräille jaetuille kirjastotyypeille.
−s |
−−full−contents
Tulosta haluttujen kappaleiden täydellinen sisältö (sekä heksana että ascii-merkkeinä).
−S |
−−source
Tulosta lähdekoodi disassemblerlistauksen seassa (jos mahdollista). Sama kuin optio -d.
−−show−raw−insn
Kun tulostetaan disassemblerlistausta tulostetaan muistikkaiden lisäksi myös vastaava heksakoodi. Tämä on oletusarvoinen toiminta paitsi, jos käytetään optiota −−prefix−addresses
−−no−show−raw−insn
Kun tulostetaan disassemblerlistausta tulostetaan vain muistikkaat ilman vastaavaa heksakoodia. Tämä on oletusarvoinen toiminta, jos käytetään optiota −−prefix−addresses
−−stabs
Tulostetaan sisältö kappaleista .stab, .stab.index ja .stab.excl ELF-formaatin objektitiedostoista. Tämä on hyödyllistä vain järjestelmissä (kuten Solaris 2.0), joissa debuggaussymbolit ovat omassa kappaleessaan. Useimmissa muissa järjestelmissä debuggaussymbolit ovat linkityssymbolien seassa ja ovat tulostettavissa optiolla −−syms.
−−start−address=osoite
Aloita tulostus annetusta osoitteesta. Tämä optio vaikuttaa optioiden −d, −r ja −s tulostukseen.
−−stop−address=address
Lopeta tulostus annetuun osoitteeseen. Tämä optio vaikuttaa optioiden −d, −r ja −s tulostukseen.
−t |
|||
−−syms |
Tulosta objektitiedoston symbolitaulun sisältö. Tulostettava tieto on vastaavaa kuin ’nm’-ohjelman tulostama. | ||
−T |
−−dynamic−syms
Tulosta objektitiedoston dynaamisen symbolitaulun sisältö. Tämä optio on järkevä vain dynaamisille objekteille, kuten eräille jaetuille kirjastotyypeille. Tulostettava tieto on vastaavaa kuin ’nm’-ohjelman tulostama, kun sille annetaan optio −D (−−dynamic)
−−version
Tulosta objdump ohjelman versionumero ja poistu ohjelmasta.
−x |
−−all−headers
Tulosta kaikki saatavilla oleva tieto otsikoista, mukaanlukien symbolitaulu ja uudelleensijoittamistiedot. Option ’−x’ kayttö vastaa optioiden ’−a −f −h −r −t’ yhtäaikaista käyttöä.
COPYING
Copyright (c) 1991, 92, 93, 94, 95, 1996 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 versions 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 conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English.
KATSO MYÖS
’binutils’ kohta infossa; The GNU Binary Utilities Roland H. Pesch (October 1991), nm(1).