我有一个android arm64跟踪:
#02 pc 00000000000c61c0 /system/lib64/libmedia.so (_ZN7android10AudioTrack16AudioTrackThread10threadLoopEv+84)
我使用下面的命令来解析代码行信息:
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
显然,wait()是一个内联函数,所以addr2line没有在threadLoop中找到代码行,而是使用wait()代码行。
如何在threadLoop中获取正确的行号?我正在使用binutils-2.28来构建addr2line工具。
答案 0 :(得分:2)
您是否尝试过-i
选项?
-i --inlines Unwind inlined functions