在嵌入式实际开发过程中,因为系统资源有限,需要尽可能的节省资源,尤其是flash资源。在某些场景下,需要直接执行占用内存较小的bin文件,而非elf文件。但xilinx SDK编译的输出文件一般为elf文件,所以需要进行格式转化。
环境准备
所在开发环境中要安装交叉编译工具链,重点是 arm-linux-gnueabihf-objcopy 。
ps: 本实验基于ubuntu 16.04, 安装petalinux2018开发环境。详细安装步骤请查看我之前写的博客。
文件准备
- 准备通过xlinx SDK编译后的elf文件。要确定编译工具与上述环境准备中的编译工具一致。文件详细格式信息如下:
- 转换脚本文件。创建并编辑脚本文件(赋予执行权限),执行具体的转换操作。文本内容如下:
注意:elf 文件和转换脚本放置在同一路径下。也可通过脚本文件自由编写并配置文件路径。
转化
命令行执行转换脚本文件即可。
应用
将转换而成的bin文件直接使用即可。