[U-Boot-Users] Re: Compiled system and target board mismatched while make U-boot image..
ito at mlb.co.jp
ito at mlb.co.jp
Fri Apr 7 07:40:38 CEST 2006
Hello Wolfgang
> Ummm... What shall I say? ELDK for MIPS supports both LE and BE
> configurations, and both work just fine, except for the fact that
> the
Thank you for reply.
ELDK user is ok. but with mipsel-linux-gcc, and to comile for
little, there is a 2 problem.
1. always add -EB to compiler.
-- cpu/mips/config.mk ---
ifneq (,$(findstring 4KCle,$(CROSS_COMPILE)))
ENDIANNESS = -EL
else
ENDIANNESS = -EB
endif
this means, to compile for little endian,
part of cross compiler name have to has a name of "4KCle".
otherwise, it will put -EB.
I think, we do not need to put -EL or -EB, compiler default
is enough.
2. examples/mips.lds、board/dbau1x00/u-boot.lds
OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradbigmips")
this specify bigendian format.
mipsel-linux-ld -g -Ttext 0x80200000 -T mips.lds \
-o hello_world -e hello_world hello_world.o libstubs.a \
-L/usr/src/mldbox/gcc-3.3.x/toolchain_mipsel/bin-ccache/../lib/gcc-lib/mipsel-linux-uclibc/3.3.4 -lgcc
mipsel-linux-ld: hello_world.o: compiled for a little endian system and target is big endian
mipsel-linux-ld: hello_world.o: endianness incompatible with that of the selected emulation
File in wrong format: failed to merge target specific data of file hello_world.omipsel-linux-ld: libstubs.a(stubs.o): compiled for a little endian system and target is big endian
mipsel-linux-ld: libstubs.a(stubs.o): endianness incompatible with that of the selected emulation
File in wrong format: failed to merge target specific data of file libstubs.a(stubs.o)
To fix these error,
I need to change
OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradbigmips")
to
OUTPUT_FORMAT("elf32-tradlittlemips", "elf32-tradlittlemips", "elf32-tradlittlemips")
or deleteing this line also work.
so, if ELDK works, without this line, please delete it.
--------
Hiroshi Ito
Media Lab. Inc.,
URL http://www.mlb.co.jp ( Sorry, Japanese only. )
TEL +81-3-5294-7255 FAX +81-3-5294-7256
> dbau1x00 port produces warnings because it is broken as it uses a
> definition of HZ which is not 1000:
>
> -> export CROSS_COMPILE=mips_4KC-
> -> ./MAKEALL dbau1550
> Configuring for dbau1x00 board...
> net.c: In function `NetStartAgain':
> net.c:597: warning: integer overflow in expression
> xyzModem.c: In function `xyzModem_stream_open':
> xyzModem.c:455: warning: unused variable `console_chan'
> text data bss dec hex filename
> 127896 4548 22864 155308 25eac u-boot
>
> -> export CROSS_COMPILE=mips_4KCle-
> -> ./MAKEALL dbau1550_el
> Configuring for dbau1x00 board...
> net.c: In function `NetStartAgain':
> net.c:597: warning: integer overflow in expression
> xyzModem.c: In function `xyzModem_stream_open':
> xyzModem.c:455: warning: unused variable `console_chan'
> text data bss dec hex filename
> 130072 4548 22864 157484 2672c u-boot
>
>
> IMHO it's clearly a toolchain problem, but who am I to know such things?
>
> Best regards,
>
> Wolfgang Denk
>
> --
> Software Engineering: Embedded and Realtime Systems, Embedded Linux
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
> We fight only when there is no other choice. We prefer the ways of
> peaceful contact.
> -- Kirk, "Spectre of the Gun", stardate 4385.3
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by xPML, a groundbreaking scripting language
> that extends applications into web and mobile media. Attend the live webcast
> and join the prime developer group breaking into this new coding territory!
> http://sel.as-us.falkag.net/sel?cmd_______________________________________________
> U-Boot-Users mailing list
> U-Boot-Users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/u-boot-users
>
More information about the U-Boot
mailing list