【GDB】调试程序
目录结构如下:
bin src start.sh stop.sh
| |
serv *.[ch]
脚本内容很简单
#!/bin/bash
./bin/serv
使用脚本将程序启动(程序编译时使用了 -g),并用ps命令查询其运行进程ID为 7138
1003 7138 0.1 0.7 160016 57748 ? S 16:27 0:01 ./bin/serv
使用gdb调试时,遇到这么个问题
1-出错情况
进入bin目录,输入命令:gdb serv 7138 或者 gdb -p 7138
使用list,总是找不到源码。
2-正常情况
在 start.sh 脚本所在目录,输入命令:gdb ./bin/serv 7138 或者 gdb -p 7138
使用list,就能够找到源码
猜测:跟程序的运行目录有关么? 在ps时,找到的程序位置是 ./bin/serv ,所以在bin目录gdb就找不到源码么? 这是为什么呢? 出错的那种情况怎么修正呢(使用dir指定目录也不行)~
大神门,谁知道,请告我~ 谢谢~
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。