Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#175 closed defect (fixed)

Package a newer version of GEOS (3.2)

Reported by: ricardogsilva Owned by: warmerdam
Priority: major Component: Package
Version: Keywords: pkg-geos
Cc: jef

Description

I have developed a plugin for QGis that requires GEOS >= 3.2 and Shapely >= 1.2 and would like to make it available for users of the osgeo4w packages. Please package a newer version of the GEOS library. Current version is 3.2 and the version offered by osgeo4w is 3.0. Thank you

Change History (10)

comment:1 Changed 11 years ago by lutra

Second it. It is pretty easy to reproduce errors while geoprocessing (intersects, clips, etc.) under (for example) QGIS in Windows. Under Linux (Ubuntu, GEOS 3.2) the same vectors/operations are handled flawlessly.

comment:2 Changed 11 years ago by aperi2007

Hi,

Is possible to update geos to a more recent version rather than 3.0.3 ? The actually stable version of geos (3.2.2) is more affordable in spatial analyst.

comment:3 Changed 11 years ago by rouault

I also second this request. I see crashes on Vista with gdaldev (1.8.0dev) when using GEOS functions because GEOS 3.0.3 doesn't have GEOSFree(), so we fallback to standard free() which causes immediate crashes

comment:4 Changed 11 years ago by warmerdam

Keywords: pkg-geos added
Owner: changed from osgeo4w-dev@… to warmerdam

I'll try to do it this week.

comment:5 Changed 11 years ago by warmerdam

Type: enhancementdefect

comment:6 Changed 11 years ago by warmerdam

Cc: jef added
Status: newassigned

QGIS will presumably have to be rebuilt with the new GEOS version so I've added Jurgen to the cc: list for coordination.

comment:7 Changed 11 years ago by warmerdam

Upon investigation qgis does not seem to depend on the geos c++ ABI.

I have uploaded a 3.2.2 build done with VC9 to the OSGeo4W test environment. Testing and feedback welcome.

comment:8 Changed 11 years ago by rouault

There's a missing .h that triggers an error while including geos_c.h

C:\utilisateurs\even\osgeo4w/include\geos_c.h(145) : fatal error C1083: Impossib
le d'ouvrir le fichier include : 'geos/export.h' : No such file or directory

GDAL would also need a recompile so to use GEOSFree() instead of free(). This is a compile time check :

        /* Since GEOS 3.1.1, so we test 3.2.0 */
#if GEOS_CAPI_VERSION_MAJOR >= 2 || (GEOS_CAPI_VERSION_MAJOR == 1 && GEOS_CAPI_VERSION_MINOR >= 6)
        GEOSFree( pabyBuf );
#else
        free( pabyBuf );
#endif

comment:9 Changed 11 years ago by warmerdam

Resolution: fixed
Status: assignedclosed

I have uploaded a -1 version of the package with the extra include file, and rebuilt gdal-dev with the new GEOS.

comment:10 Changed 11 years ago by rouault

Thanks. Works nicely.

Note: See TracTickets for help on using tickets.