LLDB如何加载崩溃日志

时间:2018-10-14 03:29:46

标签: ios xcode lldb

我正在研究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 个答案:

答案 0 :(得分:2)

我最近遇到了同样的问题。不幸的是,在当前状态下,crashlog脚本似乎期望原始二进制文件存在,但是我们可以通过以下两种方法之一来“欺骗”它:

  1. 将二进制文件从.dSYM/Contents/Resources/DWARF/内部复制到期望的路径(在.crash文件中,类似于/private/var/containers/Bundle/Application/SOME-UUID/MyApp.app/MyApp之类)

  2. 在符号化二进制文件(例如~/MyFolder/MyApp.app/...)的路径之前,在.crash文件中编辑路径(不仅是初始路径)。

希望这会有所帮助!