How to make crosstool support for VFP software fp format?

yan xiaotian
Mon Dec 11 07:14:00 GMT 2006

Dear all,

     I have a vfp compatible problem with crosstool now , have u any advice
or instructions about how to make crosstool to work with vfp softfloat
I bumped into some trouble when compiling and linking my application and
some third party library with newly-built crosstool-0.42 for my arm9 target
platform. my Makefile is as follows (main part):

 CC = arm-9tdmi-linux-gnu-gcc
MSF = -msoft-float
MVFP = -mfpe=vfp
SOURCES = $(wildcard *.c)
INCS = $(wildcard *.h)
OBJS = $(patsubst %.c, %.o, $(SOURCES))
LINK = -L. -lGPSEngine -lm -lpthread #$(MSF)
CFLAGS = $(MSF) -c
ASFLAGS= -mno-fpu
TAR = sirfapi
     @echo linking object $(TAR) ......
     $(CC) -o $@ $^ $(LINK)
sirfapi.o:sirfapi.c agps.h types.h Sf_studio.h
     @echo compiling binary $@ ......
     $(CC) $(CFLAGS) $< -o $@
opengprs.o:opengprs.c term_interface.h
     @echo compiling binary $@ ......
     $(CC) $(CFLAGS) $< -o $@

    error message:

 compiling binary opengprs.o ......
arm-9tdmi-linux-gnu-gcc -msoft-float -c opengprs.c -o opengprs.o
compiling binary sirfapi.o ......
arm-9tdmi-linux-gnu-gcc -msoft-float -c sirfapi.c -o sirfapi.o
linking object sirfapi ......
arm-9tdmi-linux-gnu-gcc -o sirfapi opengprs.o sirfapi.o -L. -lGPSEngine -lm
ERROR: ./libGPSEngine.a(AGPS.o) uses *VFP* instructions, whereas *sirfapi*(our
program) does not


Does this mean my crosstool doesn't have the VFP support . I wonder if I
need some vfp or arm sfp patches or sth like that, could u plz point out
what necessary patches I really have to add for this mission and the
approach to apply the them.

Or, perhaps, I can achieve the goal by configuring with some relevant
parameters for


my current paras:


"--with-float=soft --with-cpu=arm9tdmi --enable-cxx-flags=-mcpu=arm9tdmi"


to Dan:  At last I fix my mailer.  thanks for forwarding ;-)
and thanks for crosstool~:^)

Best Regards

                                                       Yours Alex X.T Yan



For unsubscribe information see

More information about the crossgcc mailing list