ARM Tool chain Recommendation
Hello,
What is the recommended ARM tool chain for building the current version of u-boot? Specifically can someone point me to pre-compiled binaries?
Related question -- For u-boot does it matter whether to use arm-linux or arm-elf tool chain?
Cheers,
Curt
Signature · 6 lines
========================================================================
Curt Brune | Phone 1.650.380.2528 | Managing Principal
curt at cucy.com | WWW www.cucy.com | Cucy Systems
========================================================================
Cucy Systems -- Software. Integration. Training.
========================================================================Quoted 4 lines · In message <[email protected]> you wrote:
What is the recommended ARM tool chain for building the current version of u-boot? Specifically can someone point me to pre-compiled binaries?
We use the ELDK (of course :-)
Quoted 2 lines
Related question -- For u-boot does it matter whether to use arm-linux or arm-elf tool chain?
Explain the differerence?
Best regards,
Wolfgang Denk
Signature · 3 lines
Software Engineering: Embedded and Realtime Systems, Embedded Linux Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd at denx.de I haven't lost my mind -- it's backed up on tape somewhere.
Quoted 4 lines
Quoted 2 lines
Related question -- For u-boot does it matter whether to use arm-linux or arm-elf tool chain?
Explain the differerence?
Well I have one tool chain call "arm-linux-" and one called "arm-elf-" that I installed. I don't remember where I got the arm-linux tools from, but the arm-elf tools came from
http://www.uclinux.org/pub/uClinux/m68k-elf-tools/
localhost$ arm-linux-gcc -v
Reading specs from /usr/lib/gcc-lib/arm-linux/2.95.4/specs gcc version 2.95.4 20010319 (prerelease/franzo/20011204)
localhost$ arm-elf-gcc -v
Reading specs from /usr/local/lib/gcc-lib/arm-elf/2.95.3/specs gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from
http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from
http://www.snapgear.com/)
The strange thing is these compiler define slightly different macros by default. For instance running "gcc -E -dM tmp.c" on an empty tmp.c files gives the following in the two cases:
arm-linux-gcc -E -dM tmp.c
#define __linux__ 1
#define __ARM_ARCH_3__ 1
#define __arm__ 1
#define linux 1
#define __GNUC_MINOR__ 95
#define __CHAR_UNSIGNED__ 1
#define __unix 1
#define __unix__ 1
#define __APCS_32__ 1
#define __GNUC__ 2
#define __linux 1
#define __ELF__ 1
#define unix 1
arm-elf-gcc -E -dM tmp.c
#define __arm_elf 1
#define arm_elf 1
#define __arm__ 1
#define __arm 1
#define __arm_elf__ 1
#define __ARM_ARCH_4T__ 1
#define __GNUC_MINOR__ 95
#define arm 1
#define __CHAR_UNSIGNED__ 1
#define __APCS_32__ 1
#define __GNUC__ 2
#define __ELF__ 1
Now the problem I run into with u-boot is that the arm-elf-gcc compiler defines the symbol "arm", which the arm-linux-gcc does not. This causes a problem when compiling u-boot/include/asm-arm/processor.h, which has a structure member named "arm".
I can #undef arm and things work OK. Or I can use arm-linux-gcc. For my uclinux work, however, I need to use arm-elf-gcc.
I was just wondering what tool to use for u-boot. I figured the answer was "ELDK, or course".
Signature · 6 lines
========================================================================
Curt Brune | Phone 1.650.380.2528 | Managing Principal
curt at cucy.com | WWW www.cucy.com | Cucy Systems
========================================================================
Cucy Systems -- Software. Integration. Training.
========================================================================