让我们假设nm在库utils中报告了一个功能符号:
$ nm --defined-only utils.so
T function_symbol
是否可以确定该函数的签名(返回类型和参数)?还是至少有参数个数和每个参数的大小?
答案 0 :(得分:1)
可以从DWARF调试信息中获取此信息。但是,如果调试信息不可用(要么是因为它已被剥离,要么是因为它不是在编译过程中首先生成的),则这是不可能的。 ELF对象不包含此信息。
对于C ++函数符号,改写显示了函数参数的类型,但是即使在那儿,函数结果的类型也丢失了,因此图像仍然不完整。