我有一个简单的 C 程序,它分叉一个进程,然后运行一个可执行文件。
我想将子进程附加到 gdb。
我在控制台中运行主程序并打开另一个控制台以查找子进程的 pid,然后使用以下命令启动 gdb:
gdb attach 12271
12271
子进程 ID在哪里,但附加失败并显示:
No such file or directory.
知道为什么吗?
尝试其中之一:
gdb -p 12271
gdb /path/to/exe 12271
gdb /path/to/exe
(gdb) attach 12271
第一个参数应该是可执行程序的路径。所以
gdb progname 12271
myExecutableName
使用具有 PID的运行实例15073
:
在命令行中按两次Tab后$ gdb myExecu
,将自动自动完成:
$ gdb myExecutableName 15073
并将 gdb 附加到此过程。那很好!