Cross Compiling ORC-0.4.18

All,

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

*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'*

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?

-Brandon

On Fri, Oct 4, 2013 at 11:00 AM, Brandon E. [email protected]
wrote:

-mfloat-abi=hard " cflags="-mcpu=cortex-a8 -mfpu=neon
make[2]: *** [generate-emulation] Error 1
So I then manually define it with: -Iorc/orcarm.h during the ./configure


Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

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

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs