[oe] EABI pain and frustration!

Travis Stratman tstratman at emacinc.com
Fri Feb 5 22:53:19 UTC 2010


On Fri, 2010-02-05 at 13:41 -0800, Khem Raj wrote:
> On Fri, Feb 5, 2010 at 12:43 PM, Travis Stratman <tstratman at emacinc.com> wrote:
> > On Fri, 2010-02-05 at 10:00 -0800, Khem Raj wrote:
> >> On Fri, Feb 5, 2010 at 4:29 AM, Detlef Vollmann <dv at vollmann.ch> wrote:
> >> > On 02/03/10 15:03, pspreadborough at comcast.net wrote:
> >> >>
> >> >> My 2.6.29 kernel is built with the CodeSourcery
> >> >> arm-2009q3-67-arm-none-linux-gnueabi compiler and has the EABI and
> >> >> OABI_COMPAT config options enabled. Using this kernel I can boot my SA1110
> >> >> iPaq into a OABI ramfs with no problems, however if I build a "HelloWorld"
> >> >> executable with the same compiler and try and run it I get an "Illegal
> >> >> Instruction" error. I build the test program using static linking, select
> >> >> the correct machine type and tune options but to no avail, I always get the
> >> >> illegal instruction.
> >>
> >> You need gcc 4.4 to get EABI working on ARMv4 and there are additional patches
> >> to gcc on top of gcc 4.4 see
> >> gcc-armv4-pass-fix-v4bx-to-ld.patch for gcc in OE. So as Koen suggested earlier
> >> if you try with OE compiler you might have better chance of getting it
> >> to work as many
> >> OE devs have tried it.
> >> btw. are you passing march=armv4 to the compiler when doing the compile ?
> >
> > >From my understanding of this issue he has an OABI rootfs and is trying
> > to run an EABI executable on top of it. This just doesn't work period
> > AFAIK; the kernel can boot either OABI or EABI with the compatibility
> > flags config'd in, but all of the binaries on the filesystem must match.
> >
> > I'll have to look into the patch that you referenced above because I
> > have been using EABI (built through OE) for both the kernel and
> > filesystem with armv4t for a few years now. First w/ GCC 4.1.1 and now
> > with 4.2.4 and I've never run into issues. Does the issue only manifest
> > in certain situations?
> 
> Well you said armv4t thats a whole different story than armv4 (without
> 't') for EABI
> AFAICT SA1110 is based on ARMv4 not ARMv4t.

You are correct, my mistake.

Thanks,

TAS






More information about the Openembedded-devel mailing list