[Top][All Lists]

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

Re: [Discuss-gnuradio] Swig and python import problem due to other out-o

From: Jeon
Subject: Re: [Discuss-gnuradio] Swig and python import problem due to other out-of-tree modules used in my out-of-tree module
Date: Tue, 31 Mar 2015 15:11:48 +0900

Dear Douglas,

Thank you for your answer.

Unfortunately, I couldn't find other modules and projects that use gr-dvbt in their codes. Thus, I feel sort of being frustrated :(

Or maybe I can handle it if you give me some details about CMakeLists. As you know, there are a number of CmakeLists in the project. Can it be done by modifying and fixing CMakeLists.txt under swig, python or project root directory?

As I am searching the web and archives, I've just found [this thread](http://lists.gnu.org/archive/html/discuss-gnuradio/2013-12/msg00223.html). Though I've not read carefully it yet and it's been two years since that thread was posted, I think it might be relevant with my case.

If you have any better suggestions, I will be very thankful to it.
Also, I will report my progress as soon as possible.


2015-03-31 0:22 GMT+09:00 Anderson, Douglas J. <address@hidden>:

I've recently dealt with a similar problem. Chances are that if things are building and installing correctly but the error is in the SWIG import, the actual problem lies in your CMakeLists.txt... seems like the C++ linker is being smart enough to get things linked correctly but SWIG needs you to be a bit more explicit.

Is there another project that includes Reed-Solomon that you can reference? See what changes they made to their CMakesLists.txt to get SWIG to be happy.


From: discuss-gnuradio-bounces+danderson=address@hidden [discuss-gnuradio-bounces+danderson=address@hidden] on behalf of Jeon [address@hidden]
Sent: Sunday, March 29, 2015 10:25 PM
To: Discuss GNU Radio mailing list
Subject: [Discuss-gnuradio] Swig and python import problem due to other out-of-tree modules used in my out-of-tree module

I've asked this question before. But there are lots of ambiguity and uncertainty. Thus, this is the clarification.

I am using Reed-Solomon En/decoder in my own OOT module sources. The Reed-Solomon en/decoder are implemented in [gr-dvbt](https://github.com/BogdanDIA/gr-dvbt).

Important codes are:


I've built and installed my module. But when I import my module in Python for tests, error occurs:

    >>> import myOOTmodule
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/local/lib/python2.7/dist-packages/myOOTmodule/__init__.py", line 51, in <module>
        from myOOTmodule_swig import *
      File "/usr/local/lib/python2.7/dist-packages/myOOTmodule/myOOTmodule_swig.py", line 28, in <module>
        _myOOTmodule_swig = swig_import_helper()
      File "/usr/local/lib/python2.7/dist-packages/myOOTmodule/myOOTmodule_swig.py", line 24, in swig_import_helper
        _mod = imp.load_module('_myOOTmodule_swig', fp, pathname, description)
    ImportError: /usr/local/lib/libgnuradio-myOOTmodule.so: undefined symbol: _ZN2gr4dvbt12reed_solomonC1Eiiiiiiii

You can also see the error above in [gist](https://gist.github.com/gsongsong/e07883959f6a339b5d78)

The problem is that the above error occurs since I am using gr:dvbt::reed_solomon, which is neither in GNU Radio source tree nor in my module.

I don't know the exact reason for this. But in my guess...
It seems that myOOTmodule thinks gr::dvbt::reed_solomon is a part of myOOTmodule itself. But there is no declaration and implementation and it causes the error.
Or myOOTmodule has no idea where to import gr:dvbt:reed_solomon.

Another hypothesis is that, an OOT module cannot use other OOT modules (in swig-python?). I'm not sure about it. Or, there is a way to do this, but I just don't know about it.


reply via email to

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