gpt4 book ai didi

linux - 如何使用 LLDB 调试服务器本身进行调试

转载 作者:太空宇宙 更新时间:2023-11-04 03:50:30 40 4
gpt4 key购买 nike

我正在尝试使用调试服务器在远程运行时调试 LLDB 的调试服务器。有没有正确的方法来做到这一点?

为了简洁起见,让我们调用调试服务器,我正在尝试调试连接到 LLDB L1 的 D1。 Debugserver 调试它 D2 和 L2,以及劣质进程 P。D1 和 D2 使用不同的端口。

到目前为止我所尝试的是像往常一样将 D1 连接到 P,然后在断点处停止。在使用 -a PID 附加 D2 之前。当我尝试将 L2 连接到 D2 时,D1 收到停止信号并被终止。

我还尝试运行 ./D2 localhost:4000 ./D1 localhost:1234 P 哪种有效L2 和 L1 均已连接。然而,D2 不断被来自 libc 的未处理的停止信号中断。

抱歉,如果不清楚,但还有其他人尝试过吗?

最佳答案

您可能想尝试运行下级调试服务器 (D1),然后使用上级调试服务器 (D2) 附加到它,看看是否有帮助。例如

term1% ./D1 localhost:1234 P

term2% ./D2 localhost:4000 --attach pid-of-D1

或者,如果您需要在 D1 调试服务器启动初期捕获它,则 debugserver 有一些 -help 未记录的命令行参数,例如 -waitfor,它告诉 debugserver 不断轮询正在运行的进程列表,寻找以该名称启动的新进程。例如

term1% ./D2 localhost:4000 --waitfor D1

term2% ./D1 localhost:1234 P

关于linux - 如何使用 LLDB 调试服务器本身进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26512075/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com