关于AXF文件你需要知道的那些事儿

  • Eagleson
  • LV5工程师
  • |      2016-07-12 10:25:21
  • 浏览量 1014
  • 回复:2
3.jpgaxf文件是ARM的调试文件,除了包含bin的内容之外,还附加了其他的调试信息,这些调试信息加在可执行的二进制数据的前面。在调试的时候,这些调试信息是不必下到RAM中去的,真正下到RAM中的信息仅仅是可执行代码。所以如果ram的大小小于axf文件的大小,程序是完全有可能可以在ram中调试的,只要axf除去调试信息后的大小小于ram的大小就行了。调试信息包含以下内容:1可以将源代码包括注释夹在反汇编代码中,并且我们可以随时切换到源代码中调试,2我们还可以对程序中的函数调用情况进行跟踪(Watch & Call Stack Window查看)3、对变量进行跟踪(Watch &Call Stack Window查看)如何减少调试信息如果希望带调试信息,那么在目标文件和库中减少调试信息是非常有益的,减少调试信息可以减少目标文件和库的大小、加快了链接速度、减小最终镜象的代码。以下几种方法可用来减少每个源文件产生的调试信息:1.避免在头文件中条件使用#define,链接器不能移除共用的调试部分,除非这些部分是完全一样的;2.更改C/C++源文件,以使#included包含的所有头文件有相同的顺序;3.将头文件信息分成几个小块,也就是,尽量使用数量较多的小头文件而不使用较大的单一头文件,这有利于链接器能获取更多的通用块;4.在程序中只包含那些必须要用到的头文件;5.避免重复包含头文件,可使用编译器选项--remarks来产生警告信息;6.使用编译命令行选项--no_debug_macros以从调试表中丢弃预处理宏定义
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:1
SingleYork 2016-07-13
感谢分享,又学到新知识了……
0   回复
举报
发布
Eagleson 回复 2016-07-13
如果觉得有用,请点个赞:lol,这也是一种支持~
0   回复
举报
x
收藏成功!点击 我的收藏 查看收藏的全部帖子