Remote debugging CLion远程调试不会终止远程进程
我有最新(2020.3 EAP ATM)版本的CLion,目前我使用它在嵌入式目标(linux mipsel)上远程调试程序 经过一点配置,使用自建的跨工具链和Remote debugging CLion远程调试不会终止远程进程,remote-debugging,clion,gdbserver,Remote Debugging,Clion,Gdbserver,我有最新(2020.3 EAP ATM)版本的CLion,目前我使用它在嵌入式目标(linux mipsel)上远程调试程序 经过一点配置,使用自建的跨工具链和gdbserver,一切都按预期运行 我唯一的问题是点击“红方块”停止执行既不会杀死正在运行的程序,也不会杀死gdbserver本身。 这意味着在编辑编译调试周期的下一次迭代中,我将有两个副本(如果我坚持的话,我可以得到更多副本),这两个副本都无法工作,因为它们都试图同时打开相同的资源(例如:串行端口) 我必须手动登录到target并杀死
gdbserver
,一切都按预期运行
我唯一的问题是点击“红方块”停止执行既不会杀死正在运行的程序,也不会杀死gdbserver本身。
这意味着在编辑编译调试周期的下一次迭代中,我将有两个副本(如果我坚持的话,我可以得到更多副本),这两个副本都无法工作,因为它们都试图同时打开相同的资源(例如:串行端口)
我必须手动登录到target并杀死有问题的进程
我是否遗漏了什么,是已知的bug还是什么
小更新:
gdbserver
实际上已被终止(在ps ax
中未显示),但底层程序(debugee)仍然存在。我不知道为什么我会被说服,我的错。这是一个已知的问题,希望很快会得到解决。以下是youtrack问题的链接:
您可以尝试建议的解决方法:
GDB服务器:
/bin/bash
GDB服务器参数:
-c“gdbserver:1234/home/pi/myapp;pkill-e myapp”
第二个配置对我不起作用,因此我添加了一个外部工具的执行,我在
/bin/bash
命令-c“pkill-e myapp | | true”
中运行该工具。如果程序未运行,则必须使用true
,以避免出现错误这是一个已知问题,有望很快得到解决。
以下是youtrack问题的链接:
您可以尝试建议的解决方法:
GDB服务器:
/bin/bash
GDB服务器参数:
-c“gdbserver:1234/home/pi/myapp;pkill-e myapp”
第二个配置对我不起作用,因此我添加了一个外部工具的执行,我在
/bin/bash
命令-c“pkill-e myapp | | true”
中运行该工具。如果程序未运行,则必须使用true
,以避免出现错误