将守护进程作为常规应用程序运行(在KDevelop中调试)

时间:2015-05-23 23:31:36

标签: c++ debugging gdb daemon kdevelop

有些工具可以将控制台命令或控制台应用程序作为守护程序运行。为了“守护”它,可以这么说。

有没有办法将守护进程作为常规控制台应用程序运行?

我在KDevelop中编码,但没有看到守护程序调试的任何选项。

谢谢!

1 个答案:

答案 0 :(得分:1)

向守护进程添加特殊调试模式以启用此功能是相当正常的。也就是说,添加一个命令行选项来禁用守护程序步骤,让程序在前台运行。然后在gdb下运行守护进程很简单。

我不知道有任何通用的方法来做到这一点。也许它可以通过LD_PRELOAD拦截以某种方式完成,这很酷 - 但只是修改源代码更简单。

要调试正在运行的守护程序,可以使用gdb attach命令。但是,这对于调试守护程序启动并不是很好,因为您必须竞争以及时附加。

linux内核不支持任何“预先附加”到程序的下一个实例的方法,但我写了一个hack来通过SystemTap来做,你可以找到here