LLDB进阶调试--image寻址崩溃行

  1. 出现场景

    开发中难免会遇到这种情况:即时打了全局断点,程序还是崩溃在main函数处;此时我们需要利用image寻址,通过堆栈信息来找到崩溃行,从而找出问题所在并解决问题.

  2. 模拟现象

  1. 解决问题

    此时我们需要直接找到崩溃的行.如上如红色区域所示,我们只需要直接找到非系统bug的崩溃地址,显然是第5行LLDBË∞ÉËØïImageÂتÂùÄ对应的0x0000000102315657,然后通过LLDBimage lookup --address 0x0000000102315657找到出现bug的行数,可以看出是第25行出了问题.

    1
    2
    3
    4
    libc++abi.dylib: terminating with uncaught exception of type NSException
    (lldb) image lookup --address 0x0000000102315657
    Address: LLDB调试Image寻址[0x0000000100001657] (LLDB调试Image寻址.__TEXT.__text + 295)
    Summary: LLDB调试Image寻址`-[ViewController viewDidLoad] + 295 at ViewController.m:25
这个人很帅<br>他什么都不想说<br>