www.mikrocontroller.net

Forum: Compiler & IDEs Informationen aus .elf Datei lesen?


Autor: Ose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

gibt es ein Programm mit dem ich Informationen aus meiner .elf Datei 
rauslesen kann. Z.B. in welchen Sektionen welche Daten liegen?

Gruss

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
objdump (Bestandteil der binutils)

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Ose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hört sich gut an.

Gibts das den nur für Linux? Ich habe hier nur Winxp.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt für verschiedene Targets (Prozessoren, Mikrocontroller) sog. 
Toolchains bei denen diese Tools aus dem binutils-Paket dabei sind. 
Einige dieser Toolchains sind auch für Window XP portiert. Portiert sind 
z.B. die Toolchains für X86 (MinGW, Cygwin), ARM (WINARM, Yagarto), AVR 
(WINAVR). Alternativ kannst du ja auch mit einer Linux LiveCD/LiveDVD 
arbeiten.

Autor: Ose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibts eine Möglichkeit mit einem dieser bintools die .elf auf Fehler zu 
prüfen?

Grund:

Mit der Option
readelf -all myfile.elf
wird dann schön alles angezeigt.

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg 
Align
  LOAD           0x000094 0xa0200000 0xa0200000 0x02000 0x02000 R   0x4
  LOAD           0x0020a0 0xa0203000 0xa0203000 0x1dc52c 0x1dc52c R E 
0x20
  LOAD           0x1de5e0 0x80200000 0x80200000 0x016d0 0x341628 RW 
0x20

Etwas scheint aber nicht richtig gemappt zu sein. Mein µC interner 
"image loader", dem ich die .elf übergebe, kann Segment 0 und 1 richtig 
laden, jedoch kommt danach:

ELF segment 2 (0x80200000 - 0x802016cf) refers to invalid memory

Was aber nicht sein kann, denn ab Adresse 0x8020.0000 isr RAM für die 
Applikation.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich stehe da etwas auf dem Schlauch, weil ich nichts offensichtlich 
komisches sehe. Für weitere Untersuchungen müsste man das Target 
(Prozessor, Speicherlayout), die Toolchain (bei GNU Toolchain 
insbesondere das verwendete linker control script) sowie den Image 
loader genauer kennen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.