On Thu, Sep 13, 2007 at 02:54:16PM -0400, Dawei Shen wrote: > Hey, Guys > > I encountered a programming problem when I tried to build a new block. I > defined a subclass inside my block class, which looks like: > > class my_block : gr_block{ > class my_subclass { > sub_class details > } > } > > Well, this my_subclass is part of my implementation, all its member > functions are inline functions. Everything got compiled and installed well. > However, when I used my block in my python script, I met some error like: > > import _howto > ImportError: /usr/local/lib/python2.5/site-packages/gnuradio/_howto.so: > undefined symbol: _ZN22howto_my_block10my_subclass1hE > > Could anybody help me with this problem? Should I do something with my .i > file or makefile.am file? > > Thank you in advance. > > Dawei
SWIG doesn't deal with nested C++ classes. This is a known limitation, and apparently hard to fix. In your case, I doubt that the python code needs to know anything about the implementation details, including the nested class. I suggest trying to remove the nested class from the .i file. Eric _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio