[U-Boot] Build failures with older toolchain

Premi, Sanjeev premi at ti.com
Fri Nov 19 20:43:53 CET 2010


> -----Original Message-----
> From: u-boot-bounces at lists.denx.de 
> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Premi, Sanjeev
> Sent: Saturday, November 20, 2010 12:21 AM
> To: u-boot at lists.denx.de
> Subject: [U-Boot] Build failures with older toolchain
> 
> Hi all,
> 
> I pulled u-boot about an hour ago and master is at this commit:
> 
>     Author: Matthias Weisser <weisserm at arcor.de>
>     Date:   Thu Nov 18 09:35:09 2010 +0100
> 
>         Makefile: Fix build with USE_PRIVATE_LIBGCC
> 
> (plus a small change in omap3_config.h - unrelated) 
> 
> When trying to build u-boot I was constantly, getting these errors:
> arm-none-linux-gnueabi-ld: section .bss [8003f5c8 -> 
> 8007e327] overlaps section .rel.dyn [8003f5c8 -> 80044e57]
> arm-none-linux-gnueabi-ld: section .dynsym [80044e58 -> 
> 80044ef7] overlaps section .bss [8003f5c8 -> 8007e327]
> arm-none-linux-gnueabi-ld: u-boot: section .bss vma 
> 0x8003f5c8 overlaps previous sections
> 
> Tried to build omap3_beagle and there were no issues; unable to
> debug for long, I decided to come back on this problem later.
> Opened a new window and started working on my Linux tree.
> 
> Returned back to u-boot, and this time build was successful for no
> evident change. Took me some time to realise that the toolchain
> I was using to work on Linux repo was different - I use an env
> script based on activity.
> 
> To verify the doubts, I explicitly ran this command with two different
> versions of toolchain in my path and I see different results. Here are
> last few lines of final build step
> 
> 
> Failure with Codesourcery 2009q1-203:
> 
> h/arm/lib/eabi_compat.o -L 
> /opt/codesourcery/2009q1-203/bin/../lib/gcc/arm-none-linux-gnu
> eabi/4.3.3 -lgcc -Map u-boot.map -o u-boot
> arm-none-linux-gnueabi-ld: section .bss [8003f5c8 -> 
> 8007e327] overlaps section .rel.dyn [8003f5c8 -> 80044e57]
> arm-none-linux-gnueabi-ld: section .dynsym [80044e58 -> 
> 80044ef7] overlaps section .bss [8003f5c8 -> 8007e327]
> arm-none-linux-gnueabi-ld: u-boot: section .bss vma 
> 0x8003f5c8 overlaps previous sections
> make: *** [u-boot] Error 1
> premi # pwd
> /home/premi/git/u-boot
> premi #
> 
> Success with Codesourcery 2010q1-202:
> 
> 19/u-boot/arch/arm/lib/eabi_compat.o -L 
> /opt/codesourcery/2010q1-202/bin/../lib/gcc/arm-none-linux-gnu
> eabi/4.4.1/armv4t -lgcc -Map u-boot.map -o u-boot
> arm-none-linux-gnueabi-ld: u-boot: section .bss vma 
> 0x8003e8e8 overlaps previous sections
> arm-none-linux-gnueabi-objcopy -O srec u-boot u-boot.srec
> arm-none-linux-gnueabi-objcopy --gap-fill=0xff -O binary 
> u-boot u-boot.bin
> premi # pwd
> /home/premi/git/u-boot
> premi #
> 
> The configuration for beagle still build successfully for 
> both toolchain versions.
> Any clues/ suggestions? Is there a recent change which hasn't 
> yet been adapted or
> ported for omap3evm?

Here is my log of git-bisect:
Was trying to find if any commit made changes that could be specific to toolchain version.

Due to state of the omap3evm, 2 changes in configs/omap3_evm.h had to be done manually
at some stage - to avoid compile errors due to undefined symbols.

premi # git bisect log
git bisect start
# good: [e0ccbe367ed4465db930a37a850c889827fb076b] Merge branch 'master' of http://git.denx.de/u-boot
git bisect good e0ccbe367ed4465db930a37a850c889827fb076b
# bad: [e3dae922877505c89823b17acaefdf83a6d92ce2] work in progress
git bisect bad e3dae922877505c89823b17acaefdf83a6d92ce2
# good: [f2b382ea066d02d5ba44870024cc1295e85782ef] Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
git bisect good f2b382ea066d02d5ba44870024cc1295e85782ef
# good: [d75c2a3d7f34ff1eb9920ad72483cff7cb6d358f] Merge branch 'master' of git://git.denx.de/u-boot-imx
git bisect good d75c2a3d7f34ff1eb9920ad72483cff7cb6d358f
# good: [a72dbae2ccd38d2b32f8b814f5a528c88be65bd3] fsl_pci_init: Make fsl_pci_init_port() PCI/PCIe aware
git bisect good a72dbae2ccd38d2b32f8b814f5a528c88be65bd3
# good: [a72dbae2ccd38d2b32f8b814f5a528c88be65bd3] fsl_pci_init: Make fsl_pci_init_port() PCI/PCIe aware
git bisect good a72dbae2ccd38d2b32f8b814f5a528c88be65bd3
# good: [a72dbae2ccd38d2b32f8b814f5a528c88be65bd3] fsl_pci_init: Make fsl_pci_init_port() PCI/PCIe aware
git bisect good a72dbae2ccd38d2b32f8b814f5a528c88be65bd3
# good: [227b72515546fca535dbd3274f6d875d97f494fe] Merge branch 'master' of git://git.denx.de/u-boot-ti
git bisect good 227b72515546fca535dbd3274f6d875d97f494fe
# good: [8ad25bf8d9233eb7d0b614612108622a59069354] Net: clarify board/cpu_eth_init calls
git bisect good 8ad25bf8d9233eb7d0b614612108622a59069354
# bad: [f7ac99fdd9eaf64df9731c2e8fdf97e9d3e2c82a] net: e1000: typo using wrong argument to sizeof
git bisect bad f7ac99fdd9eaf64df9731c2e8fdf97e9d3e2c82a
# good: [858ecd9ac3434e011e84d5fd9013bd1ee199dbdc] tx25: fix linker file for newer ld support
git bisect good 858ecd9ac3434e011e84d5fd9013bd1ee199dbdc
# bad: [6d8962e814c15807dd6ac5757904be2a02d187b8] Switch from archive libraries to partial linking
git bisect bad 6d8962e814c15807dd6ac5757904be2a02d187b8
premi #

This points leads me to this commit:
 
    commit 6d8962e814c15807dd6ac5757904be2a02d187b8
    Author: Sebastien Carlier <sebastien.carlier at gmail.com>
    Date:   Fri Nov 5 15:48:07 2010 +0100

    Switch from archive libraries to partial linking

Is this related to toolchain version?
Still doesn't explain why failure occurs for omap3_evm; not omap3_beagle...

~sanjeev

> 
> Best regards,
> Sanjeev
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
> 


More information about the U-Boot mailing list