我一直在将 gdb 用于 1 或 2 个项目。即我调用gdb --args prog args
. gdb 与我正在调试的程序在同一个 tty 中运行。
但是我最新的项目是修改 dtach 实用程序。这是一个类似于屏幕的程序,因此 tty 被重定向到其他地方,因此我必须使用 gdb 的附加功能。
gdb attach 的问题在于,显然您不能从一开始就附加,因为您需要先运行程序才能获得要附加的 pid。
有什么办法可以让程序在某个时间点等待 gdb 附加?
我不能使用 gdbserver,因为我在 cygwin 上。我也尝试过使用pause()
,但是当我尝试继续时它就挂了。