Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

ARM FP compilation

Name: Anonymous 2010-05-19 10:56

I've been trying to compile a program that uses a library built with hardware floating-point.
It tells me that I've compiled the main program with software FP, but on each module that comprises it (as well as the program itself) I have explicitly said "use hardware FP please" (-mhard-float, see http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html). If you want, here is the compiler output (non-important stuff truncated for readability):

arm-gcc -Wall -Wextra -mhard-float -I. -I/opt/arm/include -c main.c -o main.o
arm-gcc -Wall -Wextra -mhard-float -I. -I/opt/arm/include -c touchscreen.c -o touchscreen.o
arm-gcc -Wall -Wextra -mhard-float -I. -I/opt/arm/include -c buttons.c -o buttons.o
arm-gcc -L. -L/opt/arm/lib -lts -mhard-float main.o touchscreen.o buttons.o -o touchscreen-test
/opt/arm/bin/arm-ld: ERROR: /opt/arm/lib/libts.so uses hardware FP, whereas touchscreen-test uses software FP
/opt/arm/bin/arm-ld: failed to merge target specific data of file /opt/arm/lib/libts.so
/opt/arm/bin/arm-ld: ERROR: main.o uses hardware FP, whereas touchscreen-test uses software FP
/opt/arm/bin/arm-ld: failed to merge target specific data of file main.o
/opt/arm/bin/arm-ld: ERROR: touchscreen.o uses hardware FP, whereas touchscreen-test uses software FP
/opt/arm/bin/arm-ld: failed to merge target specific data of file touchscreen.o
/opt/arm/bin/arm-ld: ERROR: buttons.o uses hardware FP, whereas touchscreen-test uses software FP
/opt/arm/bin/arm-ld: failed to merge target specific data of file buttons.o
collect2: ld returned 1 exit status
make: *** [touchscreen-test] Error 1


Where am I supposed to tell it to make touchscreen-test with hardware FP? It seems to ignore when I tell it to, even though I read somewhere that hardware is the default.

Name: Anonymous 2010-05-19 14:31

>>1
What device are you compiling for? I know your compiler troubles are unrelated but... are you sure it has an FPU? If that's a phone it probably doesn't. If it's a DS it certainly doesn't.

PS. if you're using an ARM9E series you can target it with Go. (Not that you'd want to.)

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List