2017-07-21 2 views
1

Ich habe eine android arm64 Spur:addr2line - Inline-Funktion Codezeile fehlt

#02 pc 00000000000c61c0 /system/lib64/libmedia.so (_ZN7android10AudioTrack16AudioTrackThread10threadLoopEv+84) 

ich unter Befehl verwenden, um die Codezeile Informationen Parser:

aarch64-linux-addr2line -f -C -e symbols/system/lib64/libmedia.so 00000000000c61cc 
android::Condition::wait(android::Mutex&) 
/proc/self/cwd/system/core/include/utils/Condition.h:106 

Offensichtlich warten() ist eine Inline Funktion, so dass addr2line die Codezeile in threadLoop nicht findet, sondern stattdessen die wait() - Codezeile verwendet.

Wie bekomme ich die richtige Zeilennummer in threadLoop? Ich verwende binutils-2.28, um das addr2line-Tool zu erstellen.

Antwort

1

Haben Sie die -i Option ausprobiert?

-i --inlines   Unwind inlined functions