GCC 4.0 and newlib for ARM

Fernando Ramos FRamos@hypercom.com
Mon May 23 16:40:00 GMT 2005


I have build the GNU GCC toolchain 4.0.0 for the xscale-elf target. Everything seems to be alright
except when I try to build my old programs with the new toolset.
I get the following errors from the linker:

xscale-elf-ld: ERROR: /cygdrive/c/gcc4/lib/gcc/xscale-elf/4.0.0/libgcc.a(_pack_sf.o) uses VFP
instructions, whereas o/ClockDemo.elf does not
xscale-elf-ld: failed to merge target specific data of file

the error happens for .o modules in libc.a ang libgcc.a.

The VFP instruction set is meant to be used when your hardware has a math coprocessor, which mine
does not have. The previous toolset I was using (3.3.1) did not use VFP instructions.  I have tried
configuring newlib using --disable-newlib_hw_fp to no avail. Should I reconfigure,rebuild the
compiler with the same switch?
Is this some kind on new math support included for ARM processors?

Looking around in the configure files it seems that --disable-new-lib_hw_fp affects the #define
INTEGER_ONLY for newlib. Is this what I should be looking for?

Fernando Ramos
Senior Software Engineer
Hypercom Corp.

More information about the Newlib mailing list