gdb调试时,run时就退出,请问是什么原因.100分

时间:2021-07-30 16:37:31
我在UNIX下用GDB调试程序,在RUN后就退出了.请问是怎么回事??
(gdb) file do_yjm   //调试的文件名是do_yjm
Reading symbols from do_yjm...(no debugging symbols found)...done.
(gdb) run             //运行程序
Starting program: /u1/homeho/huhg/do_yjm
/proc/22316/ctl: Permission denied
/proc/22316/status: No such file or directory.
can't open process file
(gdb) (st03)/homeho/huhg>      //退出到了提示符下了


很急呀,谢谢

10 个解决方案

#1


Reading symbols from do_yjm...(no debugging symbols found)...done
                               ---------------------------
注意下划线部分,估计是编译时没有加-g选项

#2


/proc/22316/ctl: Permission denied
这是关键问题。看看/proc的权限设置??按理说不该有问题的。

#3


我觉得可能是-g的问题

#4


找不到symbol可以调试汇编,不会退出的。

#5


什么版本的 Unix 啊?
看看那个 Unix 的发行版有没有 GDB 的源码包,
或者是 Patch, 应该先试试自己在机器上编译一下 GDB。

#6


查看权限

#7


怀疑你对/proc/pid/ 目录下做了不允许的操作

#8


应该是没有访问权限 chmod一下。
如果没加-g会提示没有符号表的。

#9


proc/22316/status: No such file or directory 。。。。。。。。。。。。。。。

这是不是你自己无法打开文件退出了?

#10


/proc/22316/ctl: Permission denied
/proc/22316/status: No such file or directory.
can't open process file
------------------------------------
不是告诉你原因了吗?是你的程序的权限不够,把属主改为root试试

#1


Reading symbols from do_yjm...(no debugging symbols found)...done
                               ---------------------------
注意下划线部分,估计是编译时没有加-g选项

#2


/proc/22316/ctl: Permission denied
这是关键问题。看看/proc的权限设置??按理说不该有问题的。

#3


我觉得可能是-g的问题

#4


找不到symbol可以调试汇编,不会退出的。

#5


什么版本的 Unix 啊?
看看那个 Unix 的发行版有没有 GDB 的源码包,
或者是 Patch, 应该先试试自己在机器上编译一下 GDB。

#6


查看权限

#7


怀疑你对/proc/pid/ 目录下做了不允许的操作

#8


应该是没有访问权限 chmod一下。
如果没加-g会提示没有符号表的。

#9


proc/22316/status: No such file or directory 。。。。。。。。。。。。。。。

这是不是你自己无法打开文件退出了?

#10


/proc/22316/ctl: Permission denied
/proc/22316/status: No such file or directory.
can't open process file
------------------------------------
不是告诉你原因了吗?是你的程序的权限不够,把属主改为root试试