我希望可以在我的普通c代码中使用ld.so
的代码。
我正在尝试在TUI模式下通过GDB进行代码流程分析,这个模式可以在跨越代码时同时看到源代码和汇编代码。
为此,我还从Ubuntu包管理器中安装了libc-dbg
和binutils-source
软件包。
GDB可以找到ld.so
本身的调试符号,并且我可以使用si
在指令级别上单步执行,但是由于GDB无法找到ld.so
的源代码,因此我无法在源代码级别上单步执行并显示"NO Source Available"。
我应该如何让GDB找到ld.so
的源代码,以便我还可以看到正在实际执行的ld.so
源代码行。
我使用的是Ubuntu 12.10 64位
和GCC 4.8.2
。
正在读取状态信息... 完成 选择'eglibc'作为源软件包而不是'libc6' E: 无法找到eglibc的源软件包。所以我使用wget下载了我拥有版本的libc源代码。我使用设置目录绝对路径将source_path设置为libc源代码的根目录。但是在步进时,我仍然无法在GDB中看到libc的源代码。 - abhi
dir
命令添加了libc的源目录?我的意思是,从你的截图来看,它似乎不在gdb的源路径中。你也可以尝试运行info sources
来检查一下吗? - jcm