【发布时间】:2021-07-11 12:25:27
【问题描述】:
我正在从源代码构建 AOSP,并创建了一个小型 C++ 程序,该程序在启动时将一些消息打印到 logcat。现在想根据https://source.android.com/devices/tech/debug/gdb调试程序
在参考资料中,我们鼓励您使用 lldb 而不是 gdb,并且还有一小节介绍了使用 vs 代码作为调试器。
但是,我在源代码和 Android 代码搜索中的任何地方都找不到提到的脚本 lldbclient,似乎只有 gdbclient.py 存在。
Q1:在哪里可以找到 lldbclient 脚本?
运行gdbclient.py 脚本时,--setup-forwarding vscode 选项似乎被忽略,gdb 始终启动。
Q2:如果没有 lldbclient 脚本,我必须将哪些选项传递给 gdbclient.py 才能启用使用 lldb 和 vs 代码进行调试?
到目前为止我做了什么?
gdbclient.py -r /data/mysample_bin --setup-forwarding vscode
使用附加的gdb 启动我的本机程序,并允许我单步执行我的程序。
虽然我不知道如何编写 python 代码,但我能够在脚本中追踪到方法 generate_setup_script 的调用序列,该方法使用参数 debugger=gdb 调用。因此没有为 vs 代码创建 lldb 配置。将--no-gdb 或--lldb 传递给脚本不会改变这种行为。
【问题讨论】:
标签: debugging native android-source lldb