mit Mir versuche, diesen Code funktioniert: https://github.com/eliben/code-for-blog/blob/master/2011/dwarf_get_func_addr.c es von einem Tutorial von Eli Bendersky auf http://eli.thegreenplace.net/2011/02/07/how-debuggers-work-part-3-debugging-information Leider niedrigen PC und hohe pc Rückkehr aus extrahiert wird, immer die gleiche Adresse für fast jede Funktion:Zeigte hohen und niedrigen PC von jeder Programmfunktion ZWERG Bibliothek
DW_TAG_subprogram: 'aFunctionName'
low pc : 0x00000001
high pc : 0x7f3a00000001
Während, wenn objdump --dwarf = decodedline ./lulesh_normal >> dump_dwarf.txt gibt mir:
File name Line number Starting address
lulesh.cc 1297 0x402e00
lulesh.cc 1297 0x402e11
lulesh.cc 1299 0x402ee4
lulesh.cc 1300 0x402ef0
lulesh.cc 1301 0x402ef6
lulesh.cc 1299 0x402f00
[...]
So schafft es, Linie und Adresse zu verknüpfen, aber nicht die reale Adresse der Funktionen zu finden. Irgendeine Idee warum?
Vielen Dank für Ihre Hilfe,