9600
Posts: 9
Joined: Tue May 15, 2012 9:08 am
Location: Hebden Bridge, UK
Contact: Website

Error: selected FPU does not support instruction

Fri Jul 20, 2012 6:19 am

Hello,

I'm having difficulty compiling GNU Radio on Raspbian wheezy and wondered if anyone had any suggestions. The flags I'm setting with Cmake are:

cmake -DCMAKE_CXX_FLAGS:STRING="-march=armv6 -mfpu=vfp -mfloat-abi=hard" -DCMAKE_C_FLAGS:STRING="-march=armv6 -mfpu=vfp -mfloat-abi=hard" ../

Build errors pasted below.

Regards,

Andrew

--

/tmp/ccTrTeuo.s:11686: Warning: swp{b} use is deprecated for this architecture
/tmp/ccTrTeuo.s:11696: Warning: swp{b} use is deprecated for this architecture
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/runtime/gr_vmcircbuf_mmap_shm_open.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/runtime/gr_vmcircbuf_mmap_tmpfile.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/runtime/gr_vmcircbuf_createfilemapping.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/runtime/gr_vmcircbuf_sysv_shm.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/runtime/gr_select_handler.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/sysconfig_armv7_a.cc.o
[ 15%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/gr_fir_sysconfig_armv7_a.cc.o
[ 17%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/gr_cpu_armv7_a.cc.o
[ 17%] Building CXX object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/gr_fir_fff_armv7_a.cc.o
[ 17%] Building C object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o
/tmp/ccHDAfuu.s: Assembler messages:
/tmp/ccHDAfuu.s:26: Error: selected FPU does not support instruction -- `vmov.f32 q8,#0.0'
/tmp/ccHDAfuu.s:27: Error: selected FPU does not support instruction -- `vmov.f32 q9,#0.0'
/tmp/ccHDAfuu.s:30: Error: selected processor does not support ARM mode `vld1.32 {d0,d1,d2,d3},[r0]!'
/tmp/ccHDAfuu.s:31: Error: selected processor does not support ARM mode `vld1.32 {d4,d5,d6,d7},[r1]!'
/tmp/ccHDAfuu.s:32: Error: selected FPU does not support instruction -- `vmla.f32 q8,q0,q2'
/tmp/ccHDAfuu.s:33: Error: selected FPU does not support instruction -- `vmla.f32 q9,q1,q3'
/tmp/ccHDAfuu.s:35: Error: selected FPU does not support instruction -- `vadd.f32 q8,q8,q9'
/tmp/ccHDAfuu.s:36: Error: selected processor does not support ARM mode `vpadd.f32 d0,d16,d17'
make[2]: *** [gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o] Error 1

User avatar
mpthompson
Posts: 620
Joined: Fri Feb 03, 2012 7:18 pm
Location: San Carlos, CA
Contact: Website

Re: Error: selected FPU does not support instruction

Fri Jul 20, 2012 7:32 am

Based on the error messages and the names of the files being compiled which include the string "armv7" I strongly suspect that those files contain optimizations using in-line assembly code specifically for the armv7 CPU which is not supported on the Raspberry Pi. Since you are telling the compiler to specifically compile for armv6 which is needed for the Raspberry Pi, it's throwing errors about the armv7 instructions its encountering.

9600
Posts: 9
Joined: Tue May 15, 2012 9:08 am
Location: Hebden Bridge, UK
Contact: Website

Re: Error: selected FPU does not support instruction

Fri Jul 20, 2012 8:11 am

Right... One thing I forgot to mention though is that if I set "-mfpu neon" I get much further. So I'm wondering if it's still a case of the environment/configuration not quite being set up properly.

summers
Posts: 63
Joined: Mon Jan 30, 2012 4:27 pm

Re: Error: selected FPU does not support instruction

Fri Jul 20, 2012 10:44 am

Isn't NEON only implemented in cortex-a8 and cortex-a9, didn't think it was available in arm11 ....

e.g. are you sure neon is available on the RPi?

plugwash
Forum Moderator
Forum Moderator
Posts: 3435
Joined: Wed Dec 28, 2011 11:45 pm

Re: Error: selected FPU does not support instruction

Fri Jul 20, 2012 10:50 am

Neon is NOT available on the Pi.

You need to find a way to disable the armv7 runtime and use something that will work on the Pi (given that gnuradio builds on most debian architectures there is probablly a generic c/c++ implementation, you just have to work out how to tell the build to use it.

Return to “Raspbian”