如何在gdb中附加进程

时间:2013-01-17 01:47:36

标签: unix gdb

我有一个简单的C程序,它会分叉一个进程,然后运行一个可执行文件。

我想将子进程附加到gdb。

我在控制台中运行主程序并打开另一个控制台以查找子进程的pid,然后使用以下命令启动gdb:

gdb attach 12271

其中12271是子进程ID,但附加失败时带有:

No such file or directory.

知道为什么吗?

3 个答案:

答案 0 :(得分:102)

尝试以下方法之一:

gdb -p 12271
gdb /path/to/exe 12271

gdb /path/to/exe
(gdb) attach 12271

答案 1 :(得分:19)

第一个参数应该是可执行程序的路径。所以

gdb progname 12271

答案 2 :(得分:2)

使用executableName且PID为15073的运行实例:

之后

点击两次标签

$ gdb execu

将自动自动完成:

$ gdb executableName 15073

,并将附加到此过程。很好!