Gast
#1763157
Hallo, ich habe ein mit avr-g++ kompiliertes Programm, welches aus einem globalen Objekt besteht. Dieses Objekt enthält rekursiv verschaltet wiederum viele weitere Objekte. In der main-Funktion wird in eine Methode dieses globalen Objektes gesprungen und so das Programm gestartet. Nun landet dieses globale Objekt mit all seinen Membern in der bss-Sektion hinter den statischen Variablen. Mit Hilfe von avr-objdump -D bekomme ich auch Startadresse heraus, bei der das globale Objekt in der bss-Sektion beginnt. Nun möchte ich gern eine Layout-Übersicht über den gesamten Rest der bss-Sektion bekommen. Die einzige Variante, die mir dazu einfallen würde, wäre, das Gesamtheader-File herzunehmen, zu parsen und alle Offsets der Membervariablen auf deren Namen abzubilden. Dazu müsste ich natürlich auch die Größen aller Klassen bestimmen, also sizeof(). Daraus würden sich dann die Adressen zur Laufzeit berechnen lassen. Hat jemand einen Tipp für mich, ob es für so etwas Werkzeuge gibt? Mein KnowHow ist für solch einen Parser nicht ausreichend. Welche Unterstützung kann mir gcc da bieten? Vielen Dank und Herzliche Grüße Richard