need help with gcc 4.1.0 crosscompiler for arm

marty fouts mf.danger@gmail.com
Fri Apr 14 05:07:00 GMT 2006


On 4/13/06, Niklaus <niklaus@gmail.com> wrote:

[much snippage]

> > Basically, if I tell arm-elf-gcc which arm processor I'm using, it
> > recognizes that the processor has no floating point, so arm-elf-ld
> > fails, as it should, with the messages:

> > sponge:sf 500:arm/bin/arm-elf-gcc -mthumb-interwork -msoft-float
> > -mcpu=arm926ej-s -c demo.c
> > if I remove '-mcpu=arm926ej-s' from the compile, then the ld will
> > work, but i'll end up with floating point instructions on an arm
> > processor that has no fp.
> >

> pro@deb:~/armenv/bin$ ./arm-elf-gcc -c foo.c
> pro@deb:~/armenv/bin$ file foo.o
> foo.o: ELF 32-bit LSB relocatable, ARM, version 1 (ARM), not stripped
> pro@deb:~/armenv/bin$ ./arm-elf-ld -o demo.elf foo.o
> ../lib/gcc/arm-elf/4.1.0/libgcc.a

> Does this help you ? If not ask for more. You can add newlib or glibc
> after gcc bootstrap.

Thanks very much for taking the time to look at this.  Sorry, but it
doesn't help. If you leave off the -mcpu=arm96ej-s option, than you
get an elf binary with floating point.

What I really need is instructions for building libgcc.a for arm w/o
any FP instructions in it, and especially, without the FP based
calling sequences.  In particular, why did this work in 3.4 but not
4.1?



More information about the Gcc-help mailing list