[geos-devel] Using SWIG to interface with GEOS, undefined symbols
Sean Gillies
sgillies at frii.com
Mon Jul 12 10:41:07 EDT 2004
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.
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
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
More information about the geos-devel
mailing list