Message ID | 4F547BCB.1010201@denx.de |
---|---|
State | Not Applicable |
Headers | show |
On Mon, Mar 05, 2012 at 03:39:39AM -0500, Heiko Schocher wrote: ... > > arm-linux-ld: final link failed: Bad value > > make[1]: *** [/opt/work/jenkins/jobs/U- > > Boot/workspace/workspace/compiler/eldk4.2/device/arm___cam_enc_4xx/spl/u-boot- > > spl] Error 1 > > make: *** [spl/u-boot-spl.bin] Error 2 > > make: *** Waiting for unfinished jobs.... > > cmd_pxe.c: In function 'do_pxe_get': > > cmd_pxe.c:334: warning: dereferencing type-punned pointer will break strict- > > aliasing rules > > cmd_pxe.c: In function 'get_relfile_envaddr': > > cmd_pxe.c:374: warning: dereferencing type-punned pointer will break strict- > > aliasing rules > > arm-linux-size: './u-boot': No such file > > added Jason Hobbs <jason.hobbs@calxeda.com> to Cc. > > Jason? Could you fix this? Yes - I'll send a patch in shortly. Thanks, Jason
Dear Jason Hobbs, > On Mon, Mar 05, 2012 at 03:39:39AM -0500, Heiko Schocher wrote: > > ... > > > > arm-linux-ld: final link failed: Bad value > > > make[1]: *** [/opt/work/jenkins/jobs/U- > > > Boot/workspace/workspace/compiler/eldk4.2/device/arm___cam_enc_4xx/spl/ > > > u-boot- spl] Error 1 > > > make: *** [spl/u-boot-spl.bin] Error 2 > > > make: *** Waiting for unfinished jobs.... > > > cmd_pxe.c: In function 'do_pxe_get': > > > cmd_pxe.c:334: warning: dereferencing type-punned pointer will break > > > strict- aliasing rules > > > cmd_pxe.c: In function 'get_relfile_envaddr': > > > cmd_pxe.c:374: warning: dereferencing type-punned pointer will break > > > strict- aliasing rules > > > arm-linux-size: './u-boot': No such file > > > > added Jason Hobbs <jason.hobbs@calxeda.com> to Cc. > > > > Jason? Could you fix this? > > Yes - I'll send a patch in shortly. > > Thanks, > Jason Thank you very much! Best regards, Marek Vasut
Dear Heiko, In message <4F547BCB.1010201@denx.de> you wrote: > > > arm-linux-ld: u-boot-spl: Not enough room for program headers, try linking with > > -N ... > Hmm.. I need here this patch (for ELDK-4.2 only): ... > -LDFLAGS_u-boot-spl += -T $(obj)u-boot-spl.lds $(LDFLAGS_FINAL) > +LDFLAGS_u-boot-spl += -N -T $(obj)u-boot-spl.lds $(LDFLAGS_FINAL) > ifneq ($(CONFIG_SPL_TEXT_BASE),) > LDFLAGS_u-boot-spl += -Ttext $(CONFIG_SPL_TEXT_BASE) > endif > > compiles/works with ELDK-4.2 compiles/works with ELDK-5.1 ... > > a) better ideas for a fix? > b) If patch is OK, should I send for this issue in a seperate patch? Hm... checking the documentation what -N does: `-N' `--omagic' Set the text and data sections to be readable and writable. Also, do not page-align the data segment, and disable linking against shared libraries. If the output format supports Unix style magic numbers, mark the output as `OMAGIC'. Note: Although a writable text section is allowed for PE-COFF targets, it does not conform to the format specification published by Microsoft. Attributes like "readable and writable" don't play a role here, and we are not using any shared libraries either. So it must be the "do not page-align the data segment" part - which indocated that you should adjust your image size assumptions and/or your linker script. Best regards, Wolfgang Denk
diff --git a/config.mk b/config.mk index ddaa477..1aaf2a2 100644 --- a/config.mk +++ b/config.mk @@ -254,7 +254,7 @@ ifneq ($(CONFIG_SYS_TEXT_BASE),) LDFLAGS_u-boot += -Ttext $(CONFIG_SYS_TEXT_BASE) endif -LDFLAGS_u-boot-spl += -T $(obj)u-boot-spl.lds $(LDFLAGS_FINAL) +LDFLAGS_u-boot-spl += -N -T $(obj)u-boot-spl.lds $(LDFLAGS_FINAL) ifneq ($(CONFIG_SPL_TEXT_BASE),) LDFLAGS_u-boot-spl += -Ttext $(CONFIG_SPL_TEXT_BASE) endif