版权声明:转载请注明出处,谢谢。 https://blog.csdn.net/butterfly5211314/article/details/85298009
系统环境: CentOS 6.10 64bit
gdb调试时, 发现有如下错误提示信息:
(gdb) run
Starting program: /var/workspace/linux/high_perf/process/a.out
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a8fd0c in vfprintf () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.212.el6.x86_64
解决方法:
- 修改 /etc/yum.repos.d/CentOS-Debuginfo.repo 里面的 [base-debuginfo] 中的enable=1
yum install nss-softokn-debuginfo --nogpgcheck
debuginfo-install glibc-2.12-1.212.el6.x86_64
- 如果3失败, 执行 第5步
yum install yum-utils
- 执行第3步
再用之前的调试方法, gdb输出类似如下:
(gdb) run
Starting program: /var/workspace/linux/high_perf/process/a.out
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a8fd0c in _IO_vfprintf_internal (s=<value optimized out>, format=<value optimized out>,
ap=<value optimized out>) at vfprintf.c:1641
1641 process_string_arg (((struct printf_spec *) NULL));
可以发现已经没有开始的错误提示了.
注意
- 第3步可能由于网络原因会很慢甚至失败, 不行就多试几次.
参考:
https://blog.csdn.net/yy_menghuanjie/article/details/52086591
欢迎补充指正.