我正在关注 WWDC session 412 - 在 Xcode 中调试。那里有一个关于为您自己的类创建自定义 LLDB 摘要的演示。
我根本无法显示摘要。
通过在 Python 脚本中插入打印调用,我已经能够确定:
- 正在导入脚本文件
- __lldb_init_module 从未被调用
知道什么可以阻止 __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 调试器窗口中的 View :
请注意,您必须在更改脚本后重新启动 Xcode。如果在 Xcode 调试器控制台中导入脚本,似乎也不会显示 init 方法中“打印”语句的输出。
关于python - 什么时候调用 __lldb_init_module?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14159070/