discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: Migration 3.7 to 3.8 - GRC OOT module fails to import multi_usrp


From: Criss Swaim
Subject: Re: Migration 3.7 to 3.8 - GRC OOT module fails to import multi_usrp
Date: Fri, 29 Jan 2021 10:36:05 -0700
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1

Resolved:

the 3.7 to 3.8 migration guide shows components must be added to the CMake:

I am using the UHD component, so added as such

> 3.7.2
> set(GR_REQUIRED_COMPONENTS RUNTIME PMT UHD)
> find_package(Gnuradio "3.7.2" REQUIRED)
>
> 3.8.2
> find_package(Gnuradio "3.8" REQUIRED COMPONENTS UHD)
> include(GrVersion)
Also, the CMake in the lib directory must be updated, adding uhd
> target_link_libraries(gnuradio-vandevender gnuradio::gnuradio-runtime uhd)


Criss Swaim
cswaim@tpginc.net
cell: 505.301.5701

On 1/28/2021 2:55 PM, Criss Swaim wrote:
> I am running Fedora 33, GnuRadio 3.8.2 and UHD 3.15.  GnuRadio/UHD was
> installed from the dnf package with the following command:
>
>> dnf install -y gnuradio3.8 uhd-devel gnuradio-devel uhd-tools
> Following the OOT tutorial I have updated the cmake as follows:
>
>> 3.7.2
>> set(GR_REQUIRED_COMPONENTS RUNTIME PMT UHD)
>> find_package(Gnuradio "3.7.2" REQUIRED)
>>
>> 3.8.2
>> find_package(Gnuradio "3.8" REQUIRED COMPONENTS UHD)
>> include(GrVersion)
> After compiling my OOT module, the compile is clean, but running the
> block in grc I receive an error.
>
>> ImportError:
>> /home/sensor/qn382/gr-vandevender/build/lib/libgnuradio-vandevender.so.1.0.0git:
>> undefined symbol: _ZN3uhd4usrp10multi_usrp9ALL_CHANSE
> in the OOTcmodule, there is this line of code:
>
>> usrp = uhd::usrp::multi_usrp::make(ip_addr);
> To debug, I opened ipython and imported the swig file and am receiving
> the following error (thank you Martin Braun for this debugging tip):
>
>> In [1]: import swig._vandevender_swig
>> ---------------------------------------------------------------------------
>> ImportError                               Traceback (most recent call
>> last)
>> <ipython-input-1-48c182e2abc0> in <module>
>> ----> 1 import swig._vandevender_swig
>>
>> ImportError:
>> /home/sensor/qn382/gr-vandevender/build/lib/libgnuradio-vandevender.so.1.0.0git:
>> undefined symbol: _ZN3uhd4usrp10multi_usrp9ALL_CHANSE
> In ipython, I have imported uhd.usrp and dir(uhd.usrp.lib.usrp) finds
> the multi_ursp function is found,  
>
> So I suspect I need something, somewhere in the CMake file is needed to
> point swig to the correct python module uhd.usrp.lib.usrp.  But I am
> lost.  Is this even the correct area?  Are there other areas I need to
> look into?  This is my first exposure to the 'modern CMake', so if the
> problem is in it, some specific guidance would be appreciated.
>



reply via email to

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