[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Cross Compiling ORC-0.4.18

From: West, Nathan
Subject: Re: [Discuss-gnuradio] Cross Compiling ORC-0.4.18
Date: Sat, 5 Oct 2013 22:42:26 -0500

On Fri, Oct 4, 2013 at 11:00 AM, Brandon Ess <address@hidden> wrote:

I'm trying to cross compile ORC so I may use it during compilation of the UHD driver and GNURADIO. 

When cross compiling on Ubuntu 12.04 x86-64 for ARM I get the following errors:

./configure --host=arm-linux-gnueabihf  --build=arm-linux-gnueabihf cxxflags="-mcpu=cortex-a8 -mfpu=neon -funsafe-math-optimizations -mfloat-abi=hard " cflags="-mcpu=cortex-a8 -mfpu=neon -funsafe-math-optimizations -mfloat-abi=hard "  --prefix=/opt/orc-arm-cross/orc-0.4.18/test-build

<output cut>
libtool: link: gcc -Wall -I.. -g -O2 -o .libs/generate-bytecode generate_bytecode-generate-bytecode.o  ../orc/.libs/liborc-0.4.so -lm -lrt -Wl,-rpath -Wl,/opt/orc-arm-cross/orc-0.4.18/test-build/lib
../orc/.libs/liborc-0.4.so: undefined reference to `orc_arm_get_cpu_flags'
collect2: ld returned 1 exit status
make[2]: *** [generate-emulation] Error 1
make[2]: *** Waiting for unfinished jobs....
../orc/.libs/liborc-0.4.so: undefined reference to `orc_arm_get_cpu_flags'
<output cut>

orc_arm_get_cpu_flags is defined in orcarm.h and all the headers are or $ORC_ROOT/orc but when it needs this one header is cannot find it. I've made sure #include orcarm.h is in orcarm.c but it cannot find it during compilation. 

So I then manually define it with: -Iorc/orcarm.h during the ./configure process and it still doesn't find it. 

ORC 0.4.18 compiles just fine natively on both x86-64 and ARM so my current workaround is to just compile natively on the ARM platform and copy over the necessary ARM files to the x86 cross compile environment so UHD and GNURADIO can use them.

Any ideas why ORC won't cross compile?


Discuss-gnuradio mailing list

There's a couple of issues here. First, this isn't really the venue to discuss building orc. Second, it sounds like you're current method is going to result in you doing tons of sort of unnecessary work building a sysroots with ARM versions of dependencies. To build UHD and GNU Radio you'll need way more than just orc, in fact it's really on the list of things that aren't strictly required.

Unless you have a good reason for not doing so, I would recommend using OE for cross compiling. There's way more effort put in to making sure GNU Radio builds in that environment than what you are currently doing. I recently put up a wiki page with some brief instructions, but don't treat it as a one stop shop as an oe guide, read their docs and faqs first. http://gnuradio.org/redmine/projects/gnuradio/wiki/openembedded

reply via email to

[Prev in Thread] Current Thread [Next in Thread]