在centos上用gdb调试printf源码

centos中默认情况下库函数是不带调试信息的,所以用gdb无法进入到printf()函数里。

解决办法是:

1.为libc安装调试信息

a. 先要安装一个命令:sudo yum install /usr/bin/debuginfo-install

b. 设置一下repos: vi /etc/yum.repos.d/CentOS-Debuginfo.repo, 把enabled设置为1

c. 为标准库安装调试信息: sudo debuginfo-install glibc

2.再来一次gdb并进入printf()函数即可. 我这里看到的第一行代码是

_IO_size_t len = strlen (str);

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.