STM32几种特殊格式文件

介绍

下面是STM32代码编译生成的几种特殊格式的文件,开发中经常遇到,每种文件都有不同的作用

文件格式

rt-thread.axf是MDK IDE编译生成的带调试信息的可执行文件,里边记录了大量的函数、变量符号表等

rt-thread.elf 是GNU ARM编译生成的可调试程序文件,里边带有大量的调试信息符号表,可以使用objdump命令查看符号表

Plain 复制代码
arm-none-eabi-objdump.exe -a rt-thread.elf

rt-thread.map:内存映射文件,各种FLASH和RAM、函数以及变量的映射关系

rtthread.bin:单纯的二进制执行代码,甚至没有地址信息

rtthread.hex:带地址的十六进制可行性代码文件

rt-thread.lnp:链接文件,告诉链接器如何把各部分的二进制代码组织拼接起来

转换关系

首先axf和elf都是通过编译器链接生成的(下图是elf文件)

axf生成bin

axf通过FromELF生成hex,要手动勾选,hex文件一般在出厂烧录时有用

elf通过objcopy生成bin

区别

  1. hex和bin:前者带地址信息,后者没有
  2. axf和elf:都是带调试信息的可执行文件,前者是ARM定义的,后者是GNU定义的
  3. bin和elf,后者有调试信息,前者没有
相关推荐
for_ever_love__1 天前
Map-Reduce 式全文问答:当文档超出上下文时的分而治之
人工智能·map·汇总·分块·rag·reduce·长文
进击的荆棘7 天前
Linux系统——库的原理与制作之ELF文件的形成与加载的过程(上)
linux·elf·动静态库
Lucis__7 天前
深入理解程序链接与加载—从动静态链接到库加载
linux·elf·链接·程序·动静态库
XLYcmy20 天前
基于图神经网络的物联网固件漏洞静态挖掘技术方案 上
神经网络·物联网·网络安全·二进制·elf·漏洞检测·固件
一只老小白22 天前
ELF 文件格式从魔数到动态链接:读懂 Linux 可执行文件的每一字节
linux·elf·可执行文件·链接器·二进制格式
handler011 个月前
【Linux】ELF、链接与动态库,程序装载全解析
linux·运维·服务器·chrome·c·elf·文件
Tairitsu_H1 个月前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现
茶本无香2 个月前
Arthas 实战:线上“看 Map”的四种武器
java·map·arthas·线上定位
2402_882893862 个月前
封装红黑树实现map和set —— 从源码到模拟实现
c++·set·map
j7~2 个月前
【C++】《C++STL 笔记:搞懂序列 / 关联容器,聊聊 set 和 map》
c++·set·map·multimap·multiset·键值对pair·序列是容器和关联式容器