«nm» 显示零 VMA:符号将映射到哪里?

«nm» 显示零 VMA:符号将映射到哪里?

我通过“nm”查看编译的应用程序的函数 - 我需要找到一个地址来为“send()”函数设置断点。问题是,该函数对应于“nm”的输出,其 VMA 等于 0,并且该地址将来不会更改,如“A”标记所示:

00000000 A _send@16

我想知道,这意味着什么?遗嘱实际上被映射到哪里send()?可能有用的注释:二进制文件是使用 MinGW 编译的 PE 应用程序。

答案1

只是为了更新,看看这个。地址为 0 的函数应该是定义该函数的原始目标文件中的地址 0。我正在使用的库恰好在单独的文件中定义了许多函数,因此许多重要的函数似乎都有 0x0 作为他们的地址。如果添加-o到命令行,它应该读出每个符号的原始目标文件名。

https://stackoverflow.com/questions/1863613/what-does-symbol-value-from-nm-command-mean

相关内容