I’m using the cross compiling environment to take advantage of the
latest updates to ARM VOLK kernels. My build environment is identical to
the one described in the Wiki page for embedded, except that it was
necessary to add “-mtune=cortex-a9” to get the Neon assembly files to
compile in volk. Before adding this flag, I got this error:
[ 0%] Building ASM object
volk/lib/CMakeFiles/volk.dir//kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s.o
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:
Assembler messages:
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:35:
Error: selected processor does not support ARM mode veor realAccQ,realAccQ' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:36: Error: selected processor does not support ARM mode
veor
compAccQ,compAccQ’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:42:
Error: selected processor does not support ARM mode vld1.32 {d4-d5},[taps:128]!' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:43: Error: selected processor does not support ARM mode
vld2.32
{d18-d21},[input:128]!’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:50:
Error: selected processor does not support ARM mode vmul.f32 realMul,tapsVal,inRealVal' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:51: Error: selected processor does not support ARM mode
vmul.f32
compMul,tapsVal,inCompVal’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:52:
Error: selected processor does not support ARM mode vadd.f32 realAccQ,realAccQ,realMul' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:53: Error: selected processor does not support ARM mode
vadd.f32
compAccQ,compAccQ,compMul’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:54:
Error: selected processor does not support ARM mode vld1.32 {d4-d5},[taps:128]!' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:55: Error: selected processor does not support ARM mode
vld2.32
{d18-d21},[input:128]!’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:61:
Error: selected processor does not support ARM mode vpadd.f32 d0,d0,d1' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:62: Error: selected processor does not support ARM mode
vpadd.f32 d2,d2,d3’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:63:
Error: selected processor does not support ARM mode vadd.f32 realAccS,s0,s1' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:64: Error: selected processor does not support ARM mode
vadd.f32
compAccS,s4,s5’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:71:
Error: selected processor does not support ARM mode vld1.32 {d4[0]},[taps]!' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:72: Error: selected processor does not support ARM mode
vld2.32
{d5[0],d6[0]},[input]!’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:73:
Error: selected processor does not support ARM mode vmul.f32 s5,s8,s12' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:74: Error: selected processor does not support ARM mode
vmul.f32 s6,s8,s10’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:75:
Error: selected processor does not support ARM mode vadd.f32 realAccS,realAccS,s5' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:76: Error: selected processor does not support ARM mode
vadd.f32
compAccS,compAccS,s6’
/home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:82:
Error: selected processor does not support ARM mode vst1.32 {d0[0]},[result]!' /home/snowlan3/pybombs/src/gnuradio/volk/kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s:83: Error: selected processor does not support ARM mode
vst1.32
{d2[0]},[result]’
make[2]: ***
[volk/lib/CMakeFiles/volk.dir//kernels/volk/asm/neon/volk_32fc_32f_dot_prod_32fc_a_neonasmpipeline.s.o]
Error 1
make[1]: *** [volk/lib/CMakeFiles/volk.dir/all] Error 2
make: *** [all] Error 2
Sean
From: [email protected]n.invalid
[email protected]n.invalid on behalf
of West, Nathan [email protected]
Sent: Saturday, September 20, 2014 11:25 AM
To: Philip B.
Cc: GNURadio D.ion List; Mike J.; Michal J.
Subject: Re: [Discuss-gnuradio] Problems building GNURadio
I’m mobile at the moment, so can’t be detailed… +1 to not disabling
NEON. I’d rather point people towards the GNU radio wiki resources
rather than random blog posts since they will inevitably be out of date
(which this one definitely is) because the authors don’t track GR
development very closely. This page will be much more helpful:
http://gnuradio.org/redmine/projects/gnuradio/wiki/embedded
That said, there were also changes to the build setup for ARM made
yesterday, so it would be good to know what revision your building.
There have been a lot of changes to ARM builds recently, so patience and
feedback are appreciated.
On Saturday, September 20, 2014, Philip B.
<[email protected]mailto:[email protected]> wrote:
On 09/19/2014 12:08 PM, Mike J. wrote:
This URL might help:
https://labs.mwrinfosecurity.com/blog/2014/06/18/beaglebone-black-gnu-radio-and-hackrf-one/
Have you tried disabling NEON?
Disabling NEON on this platform is a bad thing. Hopefully one of the
volk guys sees what is going on. I suspect you need to use the native
build toolchain file.
Philip