Project Home
Project Home
Source Code
Source Code
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - QCC cross-compile neon error: (3 Items)
   
QCC cross-compile neon error  
I am trying to cross-compile FFTW from build machine x86-64bit Ubuntu Linux to host machine armv7le QNX6.6 neutrino.  
When I build with neon option, the autoconf utility tests that the compiler accepts neon flag and fails because QCC uses
 the build compiler (x86 with no neon support), not the host compiler.  Is there a flag setting I'm missing from below, 
or this an issue with autoconf tools?  Other tests use the host (arm) compiler.  Enabling threads has no effect on this 
error.

Attached is the config.log.

I've since commented out the ./configure lines associated with testing for -mfpu=neon and hardcode the flags in order to
 successfully compile with neon support.

The configure setup is:
ARM_CPU_TYPE=cortex-a9 \
CFLAGS="$CFLAGS $MAKEFLAGS -V4.7.3,gcc_ntoarmv7le -w9 -march=armv7-a -mfpu=neon -mfloat-abi=softfp" \
LDFLAGS="$LDFLAGS -V4.7.3,gcc_ntoarmv7le" \
NM=ntoarmv7-nm AR=ntoarmv7-ar RANLIB=ntoarmv7-ranlib \
STRIP=ntoarmv7-strip CC=qcc LD=qcc \
./configure --host=armv7-nto \
--prefix=$HOME/fftw_test --enable-neon --enable-single \
--enable-threads

Thank you for any thoughts.
Attachment: Text config_neonError.log 32.44 KB
Re: QCC cross-compile neon error  
On 15-02-20 10:54 AM, Aaron Gawlik wrote:
> I am trying to cross-compile FFTW from build machine x86-64bit Ubuntu Linux to host machine armv7le QNX6.6 neutrino.  
When I build with neon option, the autoconf utility tests that the compiler accepts neon flag and fails because QCC uses
 the build compiler (x86 with no neon support), not the host compiler.  Is there a flag setting I'm missing from below, 
or this an issue with autoconf tools?  Other tests use the host (arm) compiler.  Enabling threads has no effect on this 
error.
>
> Attached is the config.log.
>
> I've since commented out the ./configure lines associated with testing for -mfpu=neon and hardcode the flags in order 
to successfully compile with neon support.
>
> The configure setup is:
> ARM_CPU_TYPE=cortex-a9 \
> CFLAGS="$CFLAGS $MAKEFLAGS -V4.7.3,gcc_ntoarmv7le -w9 -march=armv7-a -mfpu=neon -mfloat-abi=softfp" \
> LDFLAGS="$LDFLAGS -V4.7.3,gcc_ntoarmv7le" \
> NM=ntoarmv7-nm AR=ntoarmv7-ar RANLIB=ntoarmv7-ranlib \
> STRIP=ntoarmv7-strip CC=qcc LD=qcc \
> ./configure --host=armv7-nto \
> --prefix=$HOME/fftw_test --enable-neon --enable-single \
> --enable-threads


It looks like CFLAGS aren't being passed down to the neon conftest to 
specify -Vgcc_ntoarmv7le, and it's just invoking qcc which defaults to x86.

Have you tried using --host=arm-unknown-nto-qnx6.6.0eabi and using the 
gcc driver, instead of using qcc or and setting qcc options with CFLAGS?

i.e

./configure --host=arm-unknown-nto-qnx6.6.0eabi --prefix=$HOME/fftw_test 
--enable-neon --enable-singl --enable-threads

Regards,

Ryan Mansfield

Re: QCC cross-compile neon error  
That builds on first try, and can even do shared library which I was having issues with previously.  Frustrating to wade
 through all the options when simplicity is best.  Thank you very much for the insight.