Gdb调试的时候遇到的问题

gdb 调试一个已经加过 -g 的程序 ,出现 Missing separate debuginfos 错误。百度都是乌图图的解决方法,只好来论坛求助了。

-g 只是确保了你的程序编译了 debug symbol,并不能保证你程序依赖的库也是有 debug symbol 的。而 gdb 调试需要你的软件和所有依赖的库包的 debug symbol 都有才能一路 debug 到底。

发行版打包都是带 debug symbol 编译然后 strip 出一个 debuginfo 子包的。

简单说就是它说 missing 了什么 debuginfo 你就去装什么 debuginfo 就对了。

从我的 iPhone 发送,使用 Tapatalk

系统让我 zypper install glibc-debuginfo-2.19-16.2.5.x86_64 , 我用 root 试过了说未找到提供者,然后再 YAST2 中也没搜到。上网搜下载包也找不到。

你没启用 debug 源吧

从我的 iPhone 发送,使用 Tapatalk

引用了所有的源后 YAST2 找到所有的 glibc-debug 下载安装 运行显示 /usr/lib/debug//lib64/libc-2.19.so.debug does not match “/lib64/libc.so.6”(CRC mismatch) 搜不到解决方法,然后在终端执行 zypper install glibc-debuginfo-2.19-16.2.5.x86_64,这次找到软件了 但是安装过程显示 无法写入文件’/var/adm/mount/AP_oxKS30mL’.

CRC mismatch 是你装的 glibc-debuginfo 跟 glibc 版本不匹配。后面那个怀疑你硬盘满了

从我的 iPhone 发送,使用 Tapatalk