[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: porting OOT to gr3.8 Make failure
From: |
Vasil Velichkov |
Subject: |
Re: porting OOT to gr3.8 Make failure |
Date: |
Thu, 30 Apr 2020 14:02:46 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 |
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
>>> >
>>> >
>>>
>>
>