when is ld appending .number to end of section names?
Tue Jan 22 15:38:00 GMT 2008
On Sat, Jan 19, 2008 at 02:19:11AM -0500, Mike Frysinger wrote:
> On Friday 18 January 2008, Alan Modra wrote:
> > On Fri, Jan 18, 2008 at 10:42:28PM +0100, Sam Ravnborg wrote:
> > > The expected section name was: ".init.text".
> > > But the actual section name was ".init.text.1"
> > Quoting from ld/emultemp/elf32.em
> > /* Choose a unique name for the section. This will be needed if the
> > same section name appears in the input file with different
> > loadable or allocatable characteristics. */
> > Most likely someone forgot to flag .init.text with "ax" in one of the
> > input object files. Another possiblility is that ld --unique was
> > used.
> we hit the same problem in the Blackfin kernel
> (.init.text / .init.text.1 / .init.text.2) and it was for this reason ... one
> section incorrectly lacked "ax" flags unlike all the others
> if you have scanelf installed, you can run:
> scanelf -k .init.text.1
> and usually this will find you the builtin.o file which will narrow down the
> directory of objects, one of which needs fixing. just look at the flags in
> `readelf -S`.
No scanelf - but readelf -S was useful. Thanks.
More information about the Binutils