我有一个简单的C程序,它会分叉一个进程,然后运行一个可执行文件。
我想将子进程附加到gdb。
我在控制台中运行主程序并打开另一个控制台以查找子进程的pid,然后使用以下命令启动gdb:
gdb attach 12271
其中12271
是子进程ID,但附加失败时带有:
No such file or directory.
知道为什么吗?
答案 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
,并将附加到此过程。很好!