[U-Boot-Users] [PATCH] Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections

Clemens Koller clemens.koller at anagramm.de
Wed Dec 12 12:17:43 CET 2007

brino schrieb:
 > Hi All,
 > This fix doesn't work with binutils-2.18.  I'm building u-boot for the amcc
 > yosemite board using cygwin and cross binutils-2.18/gcc-4.2.2 for a
 > powerpc-eabi target.

Yes, binutils-2.18 have this broken. binutils-2.17 work fine.

 >  The linker complains that "section .text can't be
 > allocated in segment 0."  The .bss section is by default a NOLOAD section
 > with binutils-2.18 meaning it occupies no space in the file.  However, the
 > .bss section is an ALLOC section meaning it does occupy space in target
 > memory.  The linker runs an error check to make sure all sections will
 > fit within the file and all sections will fit within target memory.  All
 > sections
 > do fit within the file, however the sections do not fit within target memory
 > because of the wrap around end of memory.
 > We could definitely drop the TEXT_BASE address lower which would fix
 > the problem, but isn't ideal since the image would take up more flash for
 > no reason.  We could link with TEXT_BASE=0 and then burn it to flash at
 > address 0xFFF80000 (this is where the current TEXT_BASE is for the
 > yosemite board).  Whats the reason it's linked at 0xFFF80000 anyway?
 > Is there an elf loader which burns it into flash?  There's also the 'AT'
 > attribute in the linker script which may help, however, I don't quite
 > understand the use of it yet.  Any suggestions on how to approach this?

I am about to verify the latest binutils-snapshot. There have been
the following patch included:
which should fix that issue.

Please be patient... I'll give you an update ASAP.


Clemens Koller
R&D Imaging Devices
Anagramm GmbH
Rupert-Mayer-Straße 45/1
Linhof Werksgelände
D-81379 München
Fax 089-741518-19

More information about the U-Boot mailing list