ELF文件是否可以包含多个符号表?

5

ELF文件是否可以包含多个符号表?这是否有标准规定?

1个回答

5

好的,但是某些编译器/链接器可能生成具有多个SYMTAB节的ELF吗?我正在编写用于处理ELF文件的实用程序。 - user313885
标准规定每个都需要一个。已经有很多工具可以处理ELF文件,你需要什么? - jim mcnamara
我正在编写自己的非常原始的静态分析工具。 - user313885
我认为这是可能的。我不知道图像激活代码是否会“喜欢”这样做。换句话说,我不知道以这种方式创建的代码是否能够运行。SYMTAB源于代码中定义的所有入口点和任何链接的.a(存档)文件。因此,在链接时,ld必须知道所有本地符号。如果不知道,则在链接期间会出现错误。唯一的例外是dl_open(),它可以打开任何库,在某些平台上是可执行文件,然后dlsym()创建指向函数的指针,这些符号在运行时完全未知。 - jim mcnamara
在我被抨击之前 - dlopen() 函数也会打开运行时库以定义 DYNSYM 部分中的符号。LD_LIBRARY_PATH 可以影响符号的实际源文件。 - jim mcnamara
事情已经发生了变化。这是一组链接,包含所有规范。http://en.wikipedia.org/wiki/Executable_and_Linkable_Format#Specifications - jim mcnamara

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接