[oe] EABI pain and frustration!

pspreadborough at comcast.net pspreadborough at comcast.net
Sat Feb 6 01:37:08 UTC 2010


----- "Travis Stratman" <tstratman at emacinc.com> wrote: 
> 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. 

I have built a EABI rootfs but I get a kernel panic when it attempts
to run init, hence my attempts to verify my EABI executables on a OABI 
fs.

Perhaps it's time for me to try the OE EABI compiler. Can you advise me 
on which OE recipes to use for this?

Regards,

Pete 





More information about the Openembedded-devel mailing list