Help with Undefined Symbol error --- undefined symbol: _Z25dsss_make_spreading_blk_bj

Hi friends,

I made a new gnuradio block and installed it in the gnuradio python
install
path. When I tried importing this in python I got this Import error.

from gnuradio import dsss
Traceback (most recent call last):
File “”, line 1, in
File “/usr/local/lib/python2.5/site-packages/gnuradio/dsss.py”, line
6, in

import _dsss
ImportError: /usr/local/lib/python2.5/site-packages/gnuradio/_dsss.so:
undefined symbol: _Z25dsss_make_spreading_blk_bj

I dont understand what it means and I didn’t found any helpful answer in
the
archive. I tried the same thing on a different computer with the same
result.

Has it got something to do with SWIG or the .i file.

I use SWIG 1.3.31 and gnuradio 3.1.3.

Any help will be appreciated

Thanks
Ali

On Mon, Sep 22, 2008 at 10:39:58PM -0500, Murtuza wrote:

import _dsss

Any help will be appreciated

Thanks
Ali

$ c++filt _Z25dsss_make_spreading_blk_bj
dsss_make_spreading_blk_b(unsigned int)

The “make” function (the function that returns the shared pointer)
should be name:

dsss_make_spreading_blk_b(unsigned int)

I suspect that it’s missing or incorrectly named in your code.

Eric

On Tuesday 23 September 2008 05:39:58 Murtuza wrote:

from gnuradio import dsss

Traceback (most recent call last):
File “”, line 1, in
File “/usr/local/lib/python2.5/site-packages/gnuradio/dsss.py”, line 6,
in
import _dsss
ImportError: /usr/local/lib/python2.5/site-packages/gnuradio/_dsss.so:
undefined symbol: _Z25dsss_make_spreading_blk_bj

this is a mangled c++ function name. You can use c++filt for demangling:
$> c++filt _Z25dsss_make_spreading_blk_bj
dsss_make_spreading_blk_b(unsigned int)

The runtime linker does not find the above mentioned symbol. Is the
shared
library defining this symbol in the library search path?

Stefan


Stefan Brüns / Bergstraße 21 / 52062 Aachen
mailto:lurch at gmx.li http://www.kawo1.rwth-aachen.de/~lurchi/
phone: +49 241 53809034 mobile: +49 151 50412019