[geos-devel] Using SWIG to interface with GEOS, undefined symbols
strk
strk at keybit.net
Mon Jul 12 11:00:38 EDT 2004
On Mon, Jul 12, 2004 at 08:41:07AM -0600, Sean Gillies wrote:
> Hi all,
>
> Yesterday I began to try to use SWIG to generate a Python
> GEOS module using the CVS GEOS. To start, I am only wrapping
> the classes in geom.h and precision.h.
precision.h does not really contain 'basic' classes.
PrecisionModel class is in geom.h.
> SWIG 1.3.20 generates wrapper code with only a few warnings
> and the module does build, resulting in geos.py and a very
> large _geos.so (I have statically linked against libgeos.a).
>
> On import of the geos module, an import error is raised:
>
> ImportError:
> /home/sean/projects/PyGEOS/build/lib.linux-i686-2.3/_geos.so:
> undefined symbol: _ZN4geos14PrecisionModel19maximumPreciseValueE
Could you have built _geos.so and the geos.py in at different times ?
CVS api is changing , and you get those kind of errors for every simple
'const' addition.
--strk;
>
> I think there is a problem not just with this symbol but with others.
> If I comment out the reference to the above in the GEOS wrapper and
> rebuild, I get an ImportError with a different undefined symbol.
> The symbols *are* in libgeos.a, and I'm certain that I've properly
> linked.
> I'm making sure to use g++ for the linker, avoiding one of the most
> common SWIG C++ module pitfalls.
>
> Anyone else taken a swing at a GEOS module with SWIG and run into
> this problem?
>
> Sean
>
>
> --
> Sean Gillies
> sgillies at frii dot com
> http://users.frii.com/sgillies
>
> _______________________________________________
> geos-devel mailing list
> geos-devel at geos.refractions.net
> http://geos.refractions.net/mailman/listinfo/geos-devel
More information about the geos-devel
mailing list