lldb调试器调试多进程 | 您所在的位置:网站首页 › 子进程调试 › lldb调试器调试多进程 |
vscode&lldb 环境下的多进程调试 vscode目前不支持使用lldb作为调试器的c++项目的多进程调试,gdb可以在launch.json中修改setupcommand来达到调试所有进程的目的,但是lldb不行,即使修改setupcommand也不能在子进程中设置断点并调试 vscode的codelldb插件支持command prompt命令可以在命令行中操作lldb,此时可以先设置lldb的fork属性以及进程断点,之后运行时自动切换至该子进程目前测试一个进程只能绑定一个进程,若想绑定多进程可以在主进程运行之后使用ps命令查看子进程pid,之后打开多个终端运行lldb attach,StackOverflow给出了另一种方法 lldb命令lldb基本用法: target create : 一般来说,若以launch操作启动lldb时会附加可执行文件名(也就是执行的目标target),若没有指定,在进入lldb后可用该命令指定target 调试可执行文件tinywebserver生成的core dump文件:(lldb) target create "/home/kuli/tinywebserver/TinyWebServer/build/tinywebserver" --core "/tmp/core.1579" r : 执行target c :继续执行直至遇到下一个断点 q :退出lldb bt : 展开断点所在函数的call stack b file:123 : 设置file断点在123行 attach pid : 将lldb附着在已经在执行的一个进程上 process interrupt/ctrl + c :中断进程lldb的quit命令会杀死(process kill)调试的进程,和kill命令默认发送的sigterm信号不同 |
CopyRight 2018-2019 实验室设备网 版权所有 |