LLDB如何加载崩溃日志

9

我正在学习iOS崩溃分析。现在,我需要将崩溃日志文件导入LLDB。根据WWDC18 Session 414 的说明,我现在拥有myApp、dSYM和xxx.crash的副本。在iTerm2.app中运行以下命令:

$ lldb
(lldb) command script import lldb.macosx.crashlog
(lldb) crashlog /path/xxxx.crash

然而,堆栈跟踪文件不可用,只有许多类似以下的错误消息:error: unable to locate any executables from the crash log。我使用方法不正确吗?正确的使用方法是什么?
1个回答

4
我最近也遇到了相同的问题。不幸的是,在当前状态下,crashlog脚本似乎期望有原始二进制文件,但我们可以通过以下方式“欺骗”它:
  1. 将位于 .dSYM/Contents/Resources/DWARF/ 内部的二进制文件复制到它期望的路径中(在 .crash 文件中找到,类似于 /private/var/containers/Bundle/Application/SOME-UUID/MyApp.app/MyApp
  2. 在符号化之前编辑 .crash 文件中的路径(不仅是初始路径),改为二进制文件的路径(例如:~/MyFolder/MyApp.app/...)。
希望这能帮到你!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接