On Tue, 8 Feb 2011 11:22:32 +0000 Julian Brown <jul...@codesourcery.com> wrote:
> IIRC I couldn't figure out the magic incantation needed to do it last > time I tried. I don't think the "--with-endian=xxx" option is > supported for ARM. Possibly the way to do it is to configure for > the "armeb-foo-eabi-bar" rather than "arm-foo-eabi-bar" target > triplet. Of course you'll still need a big-endian C library, etc... > > OTOH a quick web-search seems to suggest that building a big-endian > ARM cross-compiler might just not be possible with vanilla sources. A little more helpfully (:-)), I tried running crosstool-ng [1] to build a big-endian ARM cross-compiler, and it seems to work nicely (although I've not tested the resulting compiler beyond building "hello world" and seeing that it produced a big-endian executable). One caveat is that in-built configs for ARM only go up to GCC 4.4.5. I'm not sure how easy it is to add newer releases -- just pointing to a newer release tarball may or may not work. (Note that one of the patches supplied with crosstool-ng provides the capability to compile a big-endian ARM toolchain: i.e., it looks like support for doing that *isn't* in vanilla sources after all, as I suspected.) I guess you could use crosstool-ng to build a compiler & big-endian C library, then build a newer cross-compiler against the latter -- in theory at least. I've attached the config I used to produce an (at least nominally) working build. HTH, Julian 1. http://freshmeat.net/projects/crosstool-ng/
arm-big-endian.conf
Description: Binary data
_______________________________________________ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain