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/

Attachment: arm-big-endian.conf
Description: Binary data

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to