question on libgcc and soft-float again

Dai Yuwen yuwen@micetek.com.cn
Mon Jun 23 02:42:00 GMT 2003


Hi, Dear All

I've checked the mail archive and seen some mail about the
problem. But I still don't know how to make libgcc use soft-float.

I use binutils-2.13.1 + gcc-3.2.3 + newlib-1.11.0 to build a cross
tool chain for arm-elf (without Linux OS) on Cygwin.

This is my configure command:

mkdir /cygdrive/c/build/build-{bin,gcc,newlib}

cd /cygdrive/c/build/build-bin

/cygdrive/c/build/binutils-2.13.1/configure --target=arm-elf \
--prefix=/cygdrive/c/bar --nfp
make all install

Then I modify gcc/config/arm/t-arm-elf, uncomment these lines:
  MULTILIB_OPTIONS    += mhard-float/msoft-float
  MULTILIB_DIRNAMES   += fpu soft

cd /cygdrive/c/build/build-gcc
/cygdrive/c/build/gcc-3.2.3/configure --target=arm-elf \
--prefix=/cygdrive/c/bar --with-newlib \
--with-headers=/cygdrive/c/build/newlib-1.11.0/newlib/libc/include \
--enable-languages=c --disable-threads --nfp

make all install

cd /cygdrive/c/build/build-newlib
/cygdrive/c/build/newlib-1.11.0/configure --target=arm-elf \
--prefix=/cygdrive/c/bar --srcdir=/cygdrive/c/build/newlib-1.11.0 --nfp

make all install \
         CC_FOR_TARGET=/cygdrive/c/bar/bin/arm-elf-gcc \
         AS_FOR_TARGET=/cygdrive/c/bar/bin/arm-elf-as \
         LD_FOR_TARGET=/cygdrive/c/bar/bin/arm-elf-ld \
         AR_FOR_TARGET=/cygdrive/c/bar/bin/arm-elf-ar \
         RANLIB_FOR_TARGET=/cygdrive/c/bar/bin/arm-elf-ranlib

In this way, my own toolchain was build.  Then I use it to compile a
simple C program. There're error messages like this:

bar/bin/../lib/gcc-lib/arm-elf/3.2.3/libgcc.a(_ashldi3.o) uses FPA instructions,
  whereas a1.elf uses VFP instructions

If I add -msoft-float to CFLAGS, the error message is:
bar/bin/../lib/gcc-lib/arm-elf/3.2.3/libgcc.a(_ashldi3.o) uses hardware FP, wher
eas a1.elf uses software FP


If I add -mfpu=fpa to AFLAGS, no error message. My program linked
successfully.

My question is how to make libgcc use soft float? Both "-nfp" and
modification of t-arm-elf seems having no effect?

Best regards,
Dai Yuwen




------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list