如何使用C读取目标文件的符号

0 投票
3 回答
1644 浏览
提问于 2025-04-16 03:31

问题很简单,我有一个目标文件,我想通过代码来读取这个目标文件里的符号。我知道在Linux系统中可以用“nm”这个命令来做到这一点,但我想在代码里实现这个功能。

另外,我想用C语言或者Python来完成这个任务。

谢谢

保罗

3 个回答

1

你可能还想了解一下一个叫做 BinTools 的 Python 包:

http://code.google.com/p/pydevtools/

虽然这个包的文档不是特别完整,但它可以读取 elf 文件和它的调试符号。

1

提供更多细节会更好。

这里有一些参考链接:

  1. http://sourceforge.net/projects/python-elf/
  2. http://www.grant-olson.net/python/pyasm
0

在Linux系统中,目标文件是用ELF文件格式写的。所以我觉得你需要先了解一下ELF文件格式,以及操作系统是如何使用这种格式来写目标文件的。这样可以帮助你理解如何用自己的程序读取目标文件和符号表。想要获得一些初步的了解,你可以看看readelf工具的源代码。

撰写回答