This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, I tried to use crosstool-ng to generate a toolchain for Linux on big endian arm with recent versions of gcc, glibc, etc... but had a few problems. a toolchain based on gcc 4.3.2 and glibc 2.7 builds fine, and generates a working root filesystem, but unfortunately has a bug ( http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38674 ). a toolchain based on gcc 4.2.4 builds fine too, but generates a non working root filesytem. It appears that the gcc patch (for gcc 4.2.x) for big-endian arm (240-arm-bigendian.patch) lacks the change attached to this mail as 240-arm-bigendian2.patch. trying to build the toolchain with an earlier version of glibc fails, glibc is looking for asm/procinfo.h which is not installed by Linux' headers_install target. A solution is to modify Linux makefiles so that asm/procinfo.h is copied. The patch linux-2.6.19-arm-install-procinfo.diff may be applied to linux between versions 2.6.19 and 2.6.22 to do that, linux-2.6.23-arm-install-procinfo.diff may be applied to linux after version 2.6.23. trying to build a toolchain based on gcc 4.1.2 fails, gcc/tree.h includes tree-check.h which can not be found in gcc sources, and seems to be required. I did not try to fix this, but thought you might be interested. Regards. -- Gilles.
--- gcc-4.2.4/gcc/config/arm/bpabi.h~ 2007-09-01 17:28:30.000000000 +0200 +++ gcc-4.2.4/gcc/config/arm/bpabi.h 2009-01-05 19:19:10.000000000 +0100 @@ -32,9 +32,19 @@ #undef FPUTYPE_DEFAULT #define FPUTYPE_DEFAULT FPUTYPE_VFP +/* + * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for arm*b-* + * (big endian) configurations. + */ +#if TARGET_BIG_ENDIAN_DEFAULT +#define TARGET_ENDIAN_DEFAULT MASK_BIG_END +#else +#define TARGET_ENDIAN_DEFAULT 0 +#endif + /* EABI targets should enable interworking by default. */ #undef TARGET_DEFAULT -#define TARGET_DEFAULT MASK_INTERWORK +#define TARGET_DEFAULT (MASK_INTERWORK | TARGET_ENDIAN_DEFAULT) /* The ARM BPABI functions return a boolean; they use no special calling convention. */
--- linux-2.6.18/include/asm-arm/Kbuild~ 2009-01-06 11:44:31.000000000 +0100 +++ linux-2.6.18/include/asm-arm/Kbuild 2009-01-06 11:44:45.000000000 +0100 @@ -1 +1,3 @@ include include/asm-generic/Kbuild.asm + +header-y += procinfo.h
--- linux-2.6.23/include/asm-arm/Kbuild~ 2007-10-22 16:29:48.000000000 +0200 +++ linux-2.6.23/include/asm-arm/Kbuild 2009-01-06 11:46:53.000000000 +0100 @@ -1,3 +1,4 @@ include include/asm-generic/Kbuild.asm unifdef-y += hwcap.h +header-y += procinfo.h
-- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |