discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: porting OOT to gr3.8 Make failure


From: Ron Economos
Subject: Re: porting OOT to gr3.8 Make failure
Date: Thu, 30 Apr 2020 13:51:37 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

Just FYI, I tried the latest VOLK with your patch, but that doesn't help if VOLK is built with ORC. It looks like libvolk.so is required by libgnuradio-runtime.so (there's one volk_get_alignment() call in gnuradio-runtime) and libvolk.so requires liborc-0.4.so.

Ron

On 4/30/20 04:02, Vasil Velichkov wrote:
Hi Johannes, Ron,

The liborc-0.4.so gets linked because it is in INTERFACE_LINK_LIBRARIES in 
VolkTargets.cmake. This should be fixed in 
https://github.com/gnuradio/volk/pull/367 but a volk version with this fix is 
still not released.

Cheers,
Vasil

On 30/04/2020 13.32, Ron Economos wrote:
I don't exactly know why, but liborc-0.4.so gets linked into even the simplest 
of OOT modules. Here's an example:

     linux-vdso.so.1 (0xbef7b000)
     libgnuradio-runtime.so.3.8.1 => 
/opt/gnuradio-3.7.12git/lib/libgnuradio-runtime.so.3.8.1 (0xb6eb0000)
     libgnuradio-pmt.so.3.8.1 => 
/opt/gnuradio-3.7.12git/lib/libgnuradio-pmt.so.3.8.1 (0xb6e61000)
     libboost_system.so.1.65.1 => 
/usr/lib/arm-linux-gnueabihf/libboost_system.so.1.65.1 (0xb6e35000)
     libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xb6d22000)
     libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xb6cf9000)
     libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6c01000)
     /lib/ld-linux-armhf.so.3 (0xb6f83000)
     libvolk.so.2.2.1 => /opt/gnuradio-3.7.12git/lib/libvolk.so.2.2.1 
(0xb6b45000)
     libboost_program_options.so.1.65.1 => 
/usr/lib/arm-linux-gnueabihf/libboost_program_options.so.1.65.1 (0xb6ade000)
     libboost_filesystem.so.1.65.1 => 
/usr/lib/arm-linux-gnueabihf/libboost_filesystem.so.1.65.1 (0xb6abc000)
     libboost_thread.so.1.65.1 => 
/usr/lib/arm-linux-gnueabihf/libboost_thread.so.1.65.1 (0xb6a8f000)
     librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0xb6a79000)
     libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xb6a54000)
     liblog4cpp.so.5 => /usr/lib/arm-linux-gnueabihf/liblog4cpp.so.5 
(0xb6a1e000)
     libgmp.so.10 => /usr/lib/arm-linux-gnueabihf/libgmp.so.10 (0xb69c6000)
     libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xb6945000)
     liborc-0.4.so.0 => /usr/lib/arm-linux-gnueabihf/liborc-0.4.so.0 
(0xb68e7000)

Ron

On 4/30/20 02:46, Johannes Demel wrote:
Hi Tom,

ORC is a Tool that is used in VOLK to optimize some kernels. Though, this is an 
optional dependency. ORC kernels are not built if liborc etc is not found.

I assume you can run example flowgraphs in GRC.
In this case, you shouldn't need to worry about ORC at all. Though, somehow you 
try to link against it. Maybe it's worth a try to figure out how ORC ends up in 
your `target_link_libraries`?

I know, you fixed your issue by installing liborc*-dev but this should not be 
necessary.

Cheers
Johannes


On 30.04.20 09:37, Tom McDermott wrote:
Hi Marcus, Vasil.   I have no idea what liborc is, nor why it is needed.
It is suggested by the make failure for the ported OOT module.

Focal Fossa had liborc-0.4 but not liborc-0.4-dev, so installed that
and make completed successfully.  Thanks for the suggestion Vasil.
Perhaps it's a dependency that is missing when installing grc on 20.04?

With that, gr-hpsdr installed successfully on gr3.8, and the module instantiates
in the flowgraph.  Now to start testing to see if it works...

-- Tom, N5EG






On Wed, Apr 29, 2020 at 2:58 PM Marcus Müller <address@hidden 
<mailto:address@hidden>> wrote:

     Hi Tom,

     nice hearing from you! I didn't know that hpsdr needed orc?

     Best regards,
     Marcus

     On 29.04.20 22:46, Tom McDermott wrote:
      > I am porting an OOT from 3.7 to 3.8.
      > Ubuntu 20.04.  Gnuradio installed via apt install from the
      > gnuradio-releases PPA.  GR 3.8.1
      >
      > It looks like all the modules are compiling OK, but am getting an
     error.
      >
      > scanning dependencies of target gnuradio-hpsdr
      > [ 12%] Building CXX object
      > lib/CMakeFiles/gnuradio-hpsdr.dir/hermesNB_impl.cc.o
      > [ 25%] Building CXX object
      > lib/CMakeFiles/gnuradio-hpsdr.dir/HermesProxy.cc.o
      > [ 37%] Building CXX object
     lib/CMakeFiles/gnuradio-hpsdr.dir/metis.cc.o
      > [ 50%] Building CXX object
      > lib/CMakeFiles/gnuradio-hpsdr.dir/hermesWB_impl.cc.o
      > [ 62%] Building CXX object
      > lib/CMakeFiles/gnuradio-hpsdr.dir/HermesProxyW.cc.o
      > make[2]: *** No rule to make target
      > '/usr/lib/x86_64-linux-gnu/liborc-0.4.so <http://liborc-0.4.so>
     <http://liborc-0.4.so>', needed
      > by 'lib/libgnuradio-hpsdr.so.1937293c'.  Stop.
      > make[1]: *** [CMakeFiles/Makefile2:248:
      > lib/CMakeFiles/gnuradio-hpsdr.dir/all] Error 2
      > make: *** [Makefile:141: all] Error 2
      >
      >
      > Not sure what liborc is.   Is this what's missing, or is it
     something else?
      > liborc-dev is listed as having no installation candidate for 20.04
      >
      > $ apt-cache policy liborc-dev
      > liborc-dev:
      >   Installed: (none)
      >   Candidate: (none)
      >   Version table:
      >
      >
      >
      > -- Tom, N5EG
      >
      >





reply via email to

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