[sword-devel] Submitting a Patch against 1.60svn

Nathan Anderson nathan at andersonsplace.net
Mon Oct 19 18:05:23 MST 2009

    Ok, you got my attention <g> totally!   
    I could not not find any way to compile the Sword.cxx module generated
by swig in 1.60/1.60svn (I could do it fine in 1.5.11)   How exactly did you
get past the VerseManager referencing the inner TreeView PositionListener
class in 1.60?   
 Is their some swig parameter that allows it to generate some of the inner
I just pulled a fresh trunk version.  This is compiled against Clucene
0.9.21b and ICU 4.2.1.
Here is the error messages from a fresh SVN trunk (w/o my patch) version :
After compiling Sword with the following options:
OPTIONS="--prefix=/usr $OPTIONS"
OPTIONS="--libdir=/usr/local/lib $OPTIONS"
OPTIONS="--sysconfdir=/etc $OPTIONS"
OPTIONS="--without-conf $OPTIONS"
OPTIONS="--enable-shared $OPTIONS"
OPTIONS="--disable-debug $OPTIONS"
OPTIONS="--with-icu $OPTIONS"
OPTIONS="--with-clucene $OPTIONS"
OPTIONS="--disable-tests $OPTIONS"

I type:
cd bindings/swig/packages
make pythonswig
make python_make
I get:
Sword.cxx: In function `PyObject*
   _wrap_TreeKey_setPositionChangeListener(PyObject*, PyObject*)':
Sword.cxx:42224: error: `PositionChangeListener' undeclared (first use this
Sword.cxx:42224: error: (Each undeclared identifier is reported only once
   each function it appears in.)
Sword.cxx:42224: error: `arg2' undeclared (first use this function)
Sword.cxx:42224: error: parse error before `)' token
Sword.cxx:42242: error: parse error before `*' token
error: command '/scratchbox/compilers/host-gcc/bin/gcc' failed with exit
status 1
make: *** [python_make] Error 1

Swig Version 1.3.29
After applying my patch I can build it  


From: Ben Morgan [mailto:benpmorgan at gmail.com] 
Sent: Monday, October 19, 2009 5:10 PM
To: SWORD Developers' Collaboration Forum
Subject: Re: [sword-devel] Submitting a Patch against 1.60svn

On Tue, Oct 20, 2009 at 8:36 AM, Troy A. Griffitts <scribe at crosswire.org>

Thanks for the patch Nathan,

Is this really necessary?  This has been in the code for quite some time
and BPBible has been working with swig bindings for quite some time with
this in the code.  I don't believe this inner class should ever be
exposed in the bindings, as it is a mechanism we use in the
implementation of a specific derived class, and not a basic interface.

This isn't necessary for me; SWIG will give warnings about nested classes,
but not errors (they just won't be wrapped).
It is actually possible to get round these restrictions, but here it isn't
worth it.

The place I'd actually be a little more worried about the nested classes is
in the av11n code, with VerseMgr::System, etc.

God Bless,
Multitudes, multitudes,
   in the valley of decision!
For the day of the LORD is near
   in the valley of decision.

Giôên 3:14 (ESV)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20091019/c65a9242/attachment.html>

More information about the sword-devel mailing list