This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Objcopy problem
H.J. Lu wrote:
How do you load a section with file size 0?
One does not. Here's the effect of this command in the old tools:
$ sh4objcopy a.out a2.out --set-section-flags
.post_text_reserve=contents,alloc,load,readonly,code
$ sh4objdump -ph a2.out
a2.out: file format elf32-shl
Program Header:
LOAD off 0x00000080 vaddr 0x00000000 paddr 0x00000000 align 2**7
filesz 0x0000016c memsz 0x0000016c flags rwx
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 0000000c 00000000 00000000 00000080 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .post_text_reserve 00000160 0000000c 0000000c 0000008c 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .comment 00000043 00000000 00000000 000001ec 2**0
CONTENTS, READONLY
As you can see, the section now _has_ a file size. This was the point of
the exercise - the section contents may now be overwritten with the
final data (in this case a digital signature used to verify the other
sections).
The linker will not allow us to create a loadable section for which we
do not yet know the contents. Therefore, this trick is used to convert
the elf file into the form we need.
Andrew