2

我在这里看到了一份文件http://www.codeproject.com/Articles/3472/Finding-crash-information-using-the-MAP-file。这个例子是关于在 Windows 文件中看到的崩溃?我正在寻找与 Linux 系统上产生的崩溃相同的数学运算。如果我在 Linux 上发生崩溃,那么我将如何在 Microsoft 文档http://www.codeproject.com/Articles/3472/Finding-crash-information-using-the-MAP-file之类的类似行中调试问题。请帮忙?Linux中的加载地址和代码段地址是否相同?如链接“二进制文件的第一部分是可移植可执行文件 (PE),它是 0x1000 字节长”中提到的,Linux 中的以下内容是什么?

4

1 回答 1

1

PE是windows格式。Linux 使用 ELF。当然,您可以手动解析 ELF,但您不应该 - gdb 可以为您做到这一点。更重要的是,您可以使用 addr2line 实用程序将地址映射到源代码中的文件/行(当然这两个都需要调试构建)。

映射文件在 linux 中很少使用——它通常只是调试可执行文件的一部分。但是,它可以从调试版本中转储,但没有太多实用价值。

另外,看看如何在 linux 中使用 addr2line 命令

于 2013-09-18T09:26:42.037 回答