c – 什么是.axf文件?

前端之家收集整理的这篇文章主要介绍了c – 什么是.axf文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是新手臂架构,我从事嵌入式软件,并试图了解我的项目二进制文件夹中存在的.axf文件.

发现它是由链接生成的可执行格式文件,而构建过程则用于调试崩溃.所以很明显,它包含一些调试信息,但它不清楚什么样的信息呢?并且在debug文件夹中还存在一个.map文件,那么这两个文件有什么区别呢?

解决方法

AXF文件是由ARM的RealView编译器(也是Keil的ARM-MDK的一部分)生成的目标文件格式,包含目标代码和调试信息.在调试器中,只要将目标代码加载到目标本身,代码和调试信息都将加载到开发主机的内存中.

当通过JTAG,SWD或其他连接进行调试(不仅仅是崩溃)时,代码需要在主机上可用,以及与该代码与原始源代码相关联的调试信息.通过调试连接,只传输诸如寄存器值之类的最小数据,因此例如调试器将使用程序计数器值,并能够使用AXF中的调试数据显示主机上可用的汇编器和源代码.

MAP文件包含一些相同的信息,但它是为了人的可读性和消费而不是机器使用,并且不包含源代码级调试器所需的对象代码关联数据的源代码行.

大多数情况下,您可以忽略它 – 编译器生成它,调试器加载它.您的工具链也可能会生成一个.hex文件,这是您用于生产编程的文件,仅包含机器代码和常量数据和初始化程序.

原文链接:https://www.f2er.com/c/113068.html

猜你在找的C&C++相关文章