gpt4 book ai didi

gcc - gcc 链接器映射文件的用途是什么?

转载 作者:行者123 更新时间:2023-12-04 03:15:46 32 4
gpt4 key购买 nike

gcc/g++ 链接器选项“-Map”生成的“.map”文件用于什么?
以及如何阅读它们?

最佳答案

我建议为您投入生产的任何软件生成一个映射文件并保留一份副本。

它可用于破译崩溃报告。根据系统的不同,您可能会从崩溃中获得堆栈转储。堆栈转储将包括内存地址,其中一个寄存器将包括指令指针。这告诉您正在执行的内存地址代码。在某些系统上,代码地址可以移动(在加载动态库时,因此是动态的),但低位字节应保持不变。

映射文件是来自内存位置 -> 代码位置的 MAP。它为您提供给定内存地址处的函数名称。由于优化,它可能不是非常准确,但它为您提供了一个开始寻找导致崩溃的错误的地方。

现在,在编写商业软件的 30 年中,这是我使用 map 文件的唯一目的。两次成功。

关于gcc - gcc 链接器映射文件的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22199844/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com