免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3966 | 回复: 5
打印 上一主题 下一主题

请教gdb 的奇怪问题(SIGSEGV) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-02-08 20:28 |只看该作者 |倒序浏览
用GDB调试的时候,只要一做断点,就出现“Program received signal SIGSEGV, segmentation fault”的错误,
如果没有任何断点的话就没有问题,程序正常运行

gdb用的是自己编译的 redhat insight(gdbui),从6.4试到最新的cvs2008.2.8,都是一个样子,不知道是不是编译出来的有问题:em12:

论坛徽章:
0
2 [报告]
发表于 2007-11-20 17:31 |只看该作者
原帖由 jemy.zhang 于 2007-2-8 20:28 发表
用GDB调试的时候,只要一做断点,就出现“Program received signal SIGSEGV, segmentation fault”的错误,
如果没有任何断点的话就没有问题,程序正常运行

gdb用的是自己编译的 redhat insight(gdbui),从 ...


断点指令打错了。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
3 [报告]
发表于 2007-11-21 19:19 |只看该作者

回复 #2 雨丝风片 的帖子

例如。。。?

论坛徽章:
0
4 [报告]
发表于 2007-11-21 21:23 |只看该作者
原帖由 jemy.zhang 于 2007-2-8 20:28 发表
用GDB调试的时候,只要一做断点,就出现“Program received signal SIGSEGV, segmentation fault”的错误,
如果没有任何断点的话就没有问题,程序正常运行

gdb用的是自己编译的 redhat insight(gdbui),从 ...



你是不是用动态链接库什么的了?

如果是先运行一边,再设断电

论坛徽章:
0
5 [报告]
发表于 2007-11-22 06:52 |只看该作者
原帖由 MMMIX 于 2007-11-21 19:19 发表
例如。。。?


断点指令打错了肯定会出现楼主的现象,但楼主的现象倒未必就是这个原因。

例如gdb打进目标程序的指令并不是该arch上的有效断点指令,或者在x86这样指令不等长的arch上,pc指针修正错误,
在未恢复断点的情况下将pc指向一个字节的断点指令之后的那个位置,这样就肯定会出SIGSEGV。

具体的原因需要楼主把gdb的调试信息打印打开再分析。

论坛徽章:
0
6 [报告]
发表于 2007-11-22 07:17 |只看该作者
可以这样:
1、出现SIGSEGV的时候先bt一下,看看是不是目标程序自身的问题。
2、若确认目标程序没有问题,则查看断点地址附近的内容,看看断点插入是否正确。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP