在arm64-v8a lib上运行ndk-stack失败,错误文件格式无法识别

时间:2016-04-13 06:45:06

标签: android debugging android-ndk arm64

我为arm64-v8a创建了基于原生的预建lib。我在运行时崩溃了,我喜欢在崩溃日志上运行ndk-stack(就像我为armeabi-v7a lib所做的那样),但现在ndk-stack返回错误消息

  

无法识别文件格式

未能显示回溯迹。 为ndk-stack文件运行arm64-v8a的正确方法是什么? 谢谢,

1 个答案:

答案 0 :(得分:1)

请注意,对于-sym选项-sym $PROJECT_PATH/obj/local/armeabi-v7a,您需要正确指定符号文件,例如正确匹配ABI,对于arm64-v8a,它应该类似于-sym $PROJECT_PATH/obj/local/arm64-v8a

在此处查看官方使用文档: https://developer.android.com/ndk/guides/ndk-stack

  

有两种使用该工具的方法。您可以将logcat文本作为直接输入提供给程序。例如:

adb logcat | $NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi-v7a
     

您也可以使用-dump选项将logcat指定为输入文件。例如:

adb logcat > /tmp/foo.txt $NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi-v7a -dump foo.txt
     

开始解析logcat输出时,该工具会查找星号的第一行。例如:

     

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***