我正在关注 WWDC session 412 - Debugging in Xcode。那里有一个关于为您自己的类创建自定义 LLDB 摘要的演示。
我根本无法显示摘要。
通过在 Python 脚本中插入打印调用,我能够确定:
- 脚本文件正在被导入
- __lldb_init_module 永远不会被调用
关于什么可以阻止 __lldb_init_module 被调用的任何想法?是否有特定时间需要导入脚本?
我正在关注 WWDC session 412 - Debugging in Xcode。那里有一个关于为您自己的类创建自定义 LLDB 摘要的演示。
我根本无法显示摘要。
通过在 Python 脚本中插入打印调用,我能够确定:
关于什么可以阻止 __lldb_init_module 被调用的任何想法?是否有特定时间需要导入脚本?
对我来说,这通过添加
command script import /path/to/CustomSummaries.py
到~/.lldbinit
文件并重新启动 Xcode,或者通过在“main”中设置断点并在调试器控制台中执行导入命令。
我使用最小的自定义描述脚本对其进行了测试:
import lldb
def myobject_summary(valueObject, dictionary):
return 'MyCustomDescription'
def __lldb_init_module(debugger, dict):
debugger.HandleCommand('type summary add MyObject -F CustomSummaries.myobject_summary')
这是 Xcode 调试器窗口中的视图:
请注意,您必须在更改脚本后重新启动 Xcode。如果在 Xcode 调试器控制台中导入脚本,似乎也不会显示 init 方法中“打印”语句的输出。