lldb Xcode: error: 'printf' is not a valid command

后端 未结 1 1228
南笙
南笙 2020-12-22 04:20

I am using Xcode 4.3.3 and I want to set symbolic endpoints. I created a symbolic breakpoint for all objc_msgSend symbols and I wanted to combine it with a \"Debugger output

相关标签:
1条回答
  • 2020-12-22 04:59

    It works with lldb if you prefix "expr --" to the debugger command in the breakpoint settings:

    expr -- (void)printf("[%s, %s]\n",(char *) object_getClassName(*(long*)($esp+4)), (char *) *(long *)($esp+8) )
    

    The solution is not perfect however, because the debugger prints "no result" after each output:

    [OS_xpc_dictionary, _xref_dispose]
    <no result>
    [NSObject, initialize]
    <no result>
    [OS_object, initialize]
    <no result>
    

    I have found nothing to suppress the "no result" output, it may be that it is not possible, see this Open Radar.

    0 讨论(0)
提交回复
热议问题