[postgis-devel] liblwgeom and PostGIS 3.x: undefined gserialized_* symbols

pt122 at gmx.net pt122 at gmx.net
Fri Jun 24 09:29:50 PDT 2022


Dear postgis-devel community, with PostGIS 3.x, there are no liblwgeom.h anymore. How can I use liblwgeom the way I used it with PostGIS 2.x?
 
I tried:

- download and uncompress 3.2.1 source from https://postgis.net/source/

- ./configure 

- make

I then found a liblwgeom/liblwgeom.h (the one I needed for compiling) along with the static library liblwgeom/.libs/liblwgeom.a. I then

- compiled my c-code using gcc with (#include /path/to/liblwgeom.h) and --shared to create a new .so file (my.so). Seems to work.

- make install

- in psql, I then did a "CREATE FUNCTION with /path/to/my.so ... language c", but this fails with errors like "undefined symbol: gserialized_from_lwgeom" or "undefined symbol: gserialized_ndims".


The gserialized_ functions seem to be not declared in liblwgeom.a. What am I missing?

Thank you for any hints.

(PS: This question is a result of the latest discussion in postgis-users "[postgis-users] Postgis 3.0: How to convert liblwgeom to librttopo?", but I thought that it might be a better idea to ask here in postgis-devel :)



More information about the postgis-devel mailing list