[U-Boot-Users] Advice about a problem compiling with alternative toolchain

Andrew Reusch
2004-12-15T15:47:43Z

Just to follow up. I was able to get the toolchain I built, gcc-3.3.3
and binutil 2.14.90.0.6, to compile u-boot.bin by modifying linker
script, board/a3000/u-boot.lds.

--- u-boot.lds 2003-06-27 17:31:56.000000000 -0400
+++ u-boot.lds.bak 2004-12-15 10:39:49.000000000 -0500
@@ -70,6 +70,7 @@
. = ALIGN(16);
*(.rodata)
*(.rodata1)
+ *(.rodata.str1.4)
}
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }

Apparently, the toolchain I built wasn't handling the .rodata.str1.4
section correctly, it wasn't being subsumed into the .text section.
Instead it was at some low address. This caused the objcopy command to
try and pad a large number of bytes. I'm still curious as to why the
toolchain in ELDK-3.1 was able to build the u-boot.bin file without this
change in the linker script. Whose responsibility is it to properly
handle the reallocation of the ".rodata.str1.4" section? Is that a
proper question?

regards,
Andrew