This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
"ld --verbose" omits SECTIONS-to-PHDRS mapping
- From: John Reiser <jreiser at bitwagon dot com>
- To: binutils at sourceware dot org
- Date: Fri, 10 Jun 2011 07:58:21 -0700
- Subject: "ld --verbose" omits SECTIONS-to-PHDRS mapping
"ld --verbose" should display the linker script being used.
However, the output omits the PHDRS paragraph and the mapping from
SECTIONS to PHDRS. Thus the output lacks much necessary information,
and adapting the script for specific use requires a lot of work.
For instance, adding another PT_LOAD with designated SECTIONS
requires editing many existing SECTIONS lines that are unrelated
to the addition.
For example, in the specific case of "-m elf_i386" then the output
omits something like
-----
PHDRS
{
headers PT_PHDR PHDRS ;
interp PT_INTERP ;
text PT_LOAD FILEHDR PHDRS FLAGS ( 5 ) ;
data PT_LOAD FLAGS ( 6 ) ;
dynamic PT_DYNAMIC ;
note PT_NOTE ;
eh_frame PT_GNU_EH_FRAME FLAGS ( 4 ) ;
gnu_stack PT_GNU_STACK FLAGS ( 6 );
}
-----
and the SECTIONS lines have only:
.interp : { *(.interp) }
but instead should say:
.interp : { *(.interp) } :interp :text
Also, the output of "ld --verbose" is not even a valid script.
The header and trailer lines (marked with a long string of
equal signs "====================") should be enclosed in comment
delimiters "/* ... */".
Who can help me fix this?
--