discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: Undefined symbol _ZN2gr12msg_accepter4postEN5boost13intrusive_ptrIN3


From: Vasil Velichkov
Subject: Re: Undefined symbol _ZN2gr12msg_accepter4postEN5boost13intrusive_ptrIN3pmt8pmt_baseEEES5_
Date: Mon, 8 Nov 2021 16:51:13 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.2.0

Hi John,

Welcome to GNU Radio!

On 04/11/2021 21.35, John Coppens wrote:
> I've been suffering trying to install gnuradio. I tried different versions, 
> and different
> combinations with gr-osmosdr, as I don't see a list of which versions go 
> together.

For gnuradio 3.8 you need to use gr3.8 branch and for gnuradio 3.9 you need to 
use the master branch.

> Using, eg. gr-osmosdr.so.0.2.0 and gnuradio-3.8.4.0, which I have compiled 
> successfully

>   File "/usr/lib64/python3.9/site-packages/osmosdr/osmosdr_swig.py", line 13, 
> in <module>
>     from . import _osmosdr_swig
> ImportError: /usr/lib64/libgnuradio-osmosdr.so.0.2.0: undefined symbol: 
> _ZN2gr12msg_accepter4postEN5boost13intrusive_ptrIN3pmt8pmt_baseEEES5_
> 
> c++filt translates that symbol to 
> gr::msg_accepter::post(boost::intrusive_ptr<pmt::pmt_base>, 
> boost::intrusive_ptr<pmt::pmt_base>)

gr::msg_accepter::post() function is implemented in libgnuradio-runtime.so, so 
first check that it is there by executing the following commands (provide the 
full output)

  find /usr/ -name "libgnuradio-runtime.so*"
  ldd -r /usr/lib64/libgnuradio-osmosdr.so.0.2.0
  ldd -r /usr/lib64/libgnuradio-runtime.so
  objdump -T  /usr/lib64/libgnuradio-runtime.so | grep 
_ZN2gr12msg_accepter4postEN5boost13intrusive_ptrIN3pmt8pmt_baseEEES5_
  objdump -T  /usr/lib64/libgnuradio-runtime.so | grep msg_accepter | grep post
  objdump -TC /usr/lib64/libgnuradio-runtime.so | grep msg_accepter | grep post
  
and then try a clean rebuild with your current gnuradio and boost versions. Go 
in the gr-osmosdr source directory, delete the build directory and start from 
scratch.

P.S.
Also make sure that you don't have multiple gnuradio versions installed at the 
same time in /usr/ and /usr/local/


Regards,
Vasil



reply via email to

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