[geos-devel] Is GEOS 3.11 C-API upward compatible with GEOS 3.9.0

Regina Obe lr at pcorp.us
Mon Dec 6 22:52:18 PST 2021


> From: geos-devel [mailto:geos-devel-bounces at lists.osgeo.org] On Behalf Of
> Paul Ramsey
> Sent: Monday, December 6, 2021 8:41 PM
> To: GEOS Development List <geos-devel at lists.osgeo.org>
> Subject: Re: [geos-devel] Is GEOS 3.11 C-API upward compatible with GEOS
> 3.9.0
> 
> Semi worthless data point on this, but I did want to verify that
everything still
> worked at least for me, so I built against GEOS 3.6 and then swapped in
> everything from 3.6 to main at runtime, and it all worked fine.
> 
> P
[Regina Obe] 
What are your libraries called? Did the names stay the same? 

In case you got lost in my long rant.

Greg suggested looking at ldd and ldd showed the culprit.
I suspect it might just be a windows issue, possibly even  mingw64 cmake
issue.

The issue is the file names changed in my cmake builds between 3.10.0 to
3.10.1

So my 3.10.0 build had these files (and all versions I have built, including
GEOS 3.6 have had these names). 
The fact they never changed made me happy (and I kept my mouth shut at the
beauty of this bug).

c-api => libgeos_c.dll
c++ api ->  libgeos.dll

and from 3.10.1 forward, my files look like yuck:
c-api => libgeos_c-1.dll
c++ api -> libgeos-3.10.1.dll

One can rightfully argue, that the old 3.10.0 behavior was a bug (I call it
feature or a beautiful bug :) )
And that 3.10.1 is the proper way to version since the c++ abi is 
unstable it should be changing in each micro-release.

I'm just a bit irritated this changed happened in a micro-release.
Not a huge deal.

Thanks,
Regina






More information about the geos-devel mailing list