linux下objdump怎么把.bin转化为.elf

linux下objdump怎么把.bin转化为.elf,第1张

实际上早在 08 年,笔者就深入研究了这个问题,只不过是在 Linux 平台上。当时优化到脊拿好了 76 个字节,可以打印 HelloWorld,格式是ELF可执行文件,几乎把 C 编译,链接,敏念汇编,装载,运樱铅行

以bin文件转换成HEX文件为例,具体方法如下:

1、百度搜索下载Bin_Hex.exe,下载后无需安装,直接打开软件。

2、通过”文件“菜单打开”打开文件“窗口,找到BIN文件存放路径

3、如果路径打开正确没有显示出来的话,设置一下文件类型,如下图所示,选择”二进制文件(*.bin)“。

4、点击选中已显示出来的BIN文件,文件名自动输入到文件名框中。

5、再点击”键液派打开“按钮导入这个BIN文件到工具软件中。

6、导入过程其实就是转换的过程,稿贺通过底下的进度条查看导入进度。

7、导入完成后点击”保存“按钮,如下图所示。

8、选择好保存路径并在文件名输入框中输入保存文件名称。

9、保存埋哪类型自动选择为HEX文件类型,这里不需要更改,再点击”保存“按钮保存。

10、保存成功后,该路径下就生成了一个HEX文件了,如果将HEX转换成BIN也是同样的 *** 作。

1、通过gcc编译出来的是elf文件

2、通过objcpy可以把elf文件转换为bin文件

CC=ppc-gcc

LD=ppc-ld

OBJCOPY=ppc-objcopy

$(CC) -g $(CFLAG) -c boot.S

#先将boot.S文件生成boot.o

$(LD) -g 竖灶卖-Bstatic -T$(LDFILE) \

-Ttext 0x12345600 boot.o \

--start-group -Map boot.map -o boot.elf 

#再将boot.o生成boot.elf

$(OBJCOPY) -O binary -R .note -R .comment -S boot.elf boot.bin

#接辩茄着将 boot.elf 转换为 boot.bin

#使用 -O binary (或--out-target=binary) 输出为原始的二进制文件

#使用 -R .note  (或--remove-section)    输出文件中不要.note这个section,缩小了文件尺余逗寸

#使用 -S        (或 --strip-all)        输出文件中不要重定位信息和符号信息,缩小了文件尺寸


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12143521.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存