ELF Info (Debug-Information) nachträglich in elf File hinzufügen

Persönliche Seite
Oh Gott ist das eine neverending Story? Das Problem hatten wir so 
ähnlich mit j0hannes:

Er wollte einen vorhandenen C-Quellcode für das Target MSP430 mit dem 
IAR Compiler übersetzen und das Kompilat anschliessend mit dem GNU 
Debugger und einer grafischen Oberfläche debuggen 
(Beitrag "Dubuggen einer elf File").

Damals kam man zum Schluss, dass der IAR keinen ELF-Objektcode mit 
Debuginfos erzeugen kann.

Eine Abhilfe wäre, mit dem IAR Objektcode in einem anderen, 
IAR-kompatiblen Format zu erzeugen und - jetzt kommt es - den mit den 
IAR eigenen Debugtools zu debuggen. Bei der freien IAR Kickstart Version 
(http://focus.ti.com/docs/toolsw/folders/print/iar-kickstart.html) ist 
sogar ein Debugger dabei!

Eine andere Abhilfe wäre, den Quellcode mit dem GCC für MSP430 zu 
übersetzen. Der kann ELF-Obektcode mit Debuginformationen erzeugen, die 
der GNU Debugger verarbeiten kann. Auf den GNU Debugger (GDB) kann man 
grafische Oberflächen aufsetzen.

Der Haken an diesem 2. Weg ist, dass es compilerspezifische 
Erweiterungen zum C Standard geben kann und der C-Quellcode nicht 1:1 
von IAR nach GCC übertragbar sein muss. Anfänger scheitern vielleicht an 
der eventuell notwendigen Anpassung. Mehr könnte man sagen, wenn man mal 
den C-Quellcode gesehen hat.

Der nächste Haken an der GNU Toolchain ist, dass das Aufsetzen und 
Betreiben der Toolchain und des GDB mit GUI für Anfänger erschreckend 
kompliziert sein kann. Andererseits habe ich es nicht mal geschafft die 
dämliche IAR Kickstart Version von oben zu installieren ;-)
Gast
> Hallo, ich würde gerne nachträgliche Debug-Inforamtationen zu einer elf
> File hinzufügen.

Das geht so; Du kompilierst denselben Quellcode nochmals mit der Option, 
dass Debuginformationen dabei sein sollen.
Dann machst Du ein Diff von Deiner ELF Datei ohne Debug-Informationen 
und der ELF Datei mit Debug-Informationen. Die gefundenen Änderungen 
trägst Du dann bei der ELF Datei ohne Debug-Informationen nach.
Hast Du alles richtig gemacht, sollte ein erneutes Diff keine 
Unterschiede mehr zwischen Deiner modifizierten ELF Datei mit der 
zuletzt mittels Compiler erzeugten mehr aufweisen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.