Linux ELF文件格式分析—objcopy命令的使用
最近在看《程序员的自我修养—链接、装载与库》一书,对书中提到的一个小问题,自己做了个试验验证一番,然后记录之。其具体问题如下:
如果我们将一个二进制文件,比如图片,MP3音乐,词典一类的东西作为目标文件的一段,该怎么做?
可以使用objcopy工具,比如我们有一个图片文件”image.jpg” 大小为8846Bytes :
[james_xie@james-desk testforobjcopy]$ ls -al image.jpg
-rw-rw-r-- 1 james_xie james_xie 8846 Jun 21 12:51 image.jpg
[james_xie@james-desk testforobjcopy]$ objcopy -I binary -O elf64-x86-64 -B i386 image.jpg image.o
[james_xie@james-desk testforobjcopy]$ objdump -ht image.o
image.o: file format elf64-x86-64
Sections:
Idx Name Size VMA LMA File off Algn
0 .data 0000228e 0000000000000000 0000000000000000 00000040 2**0
CONTENTS, ALLOC, LOAD, DATA
SYMBOL TABLE:
0000000000000000 l d .data 0000000000000000 .data
0000000000000000 g .data