2009-05-03 16 views

Odpowiedz

-5

Co to jest plik DWARF? Być może pliki DWARF definiują funkcje jako funkcję (xxx) tak, jak robi to wiele języków. W tym przypadku, sugerujemy użycie grep -n -R "function.*(" /dwarf/*.DWARF

1

Możesz zajrzeć do avr-readelf w binutils. Funkcja display_debug_lines() w binutils/dwarf.c zajmuje się dekodowaniem informacji o teksturowaniu DWARF.

Ponadto, jak zasugerowano powyżej, można użyć libdwarf. To jest dobra robota ukrywania złożoności niskiego poziomu DWARF i pozwala skupić się na uzyskiwaniu danych.

Po skonfigurowaniu libdwarf z elfdescriptor i coraz struct Dwarf_Debug, można wykonać następujące czynności:

  1. trawers wszystkich jednostek kompilacji z dwarf_srclines()
  2. użytku dwarf_srclines() na każdej cu
  3. użyj dwarf_lineaddr() na każdym wpisie w tablicy zwróconej z dwarf_srclines()
  4. pamiętaj, aby użyć metody dwarf_dealloc() w odpowiednich miejscach.
Powiązane problemy