我正在寻找一种方法来打印 GDB 中加载的符号文件的名称。
我可以用几种不同的方式打印它,但它们并不理想。
一种方法是输入
file
命令:
(gdb) file
No executable file now.
Discard symbol table from `/path/to.elf'? (y or n)
另一种方法是使用
maint info symtabs
,因为它开头为:
{ objfile /path/to.elf ((struct objfile *) 0xADDRESS)
但我正在寻找更简单的东西,我不必解析 - 或者至少是一种解析它并存储在 GDB 变量中的合理方法。
Python API 也是一种选择,但我宁愿有一个也能在无 python GDB 中工作的解决方案。
我正在寻找一种方法来打印加载的符号文件的名称
不一定有“加载的符号文件”——可能有很多(一两个用于主二进制文件,另外一两个用于每个加载的共享库)。
info file
和
info shared
提供了一些信息。