[geos-devel] Building GEOS with GDAL

strk at refractions.net strk at refractions.net
Tue Nov 14 08:00:44 EST 2006


On Tue, Nov 14, 2006 at 12:50:33PM +0000, Mir Hassan Ali wrote:
> Hi
> 
> I am also getting these warnings for geos_c.h file. Are these of any
> significance?

mmm... maybe the type specifier is just placed in the wrong 
way:


133: extern GEOSGeometry* GEOS_DLL GEOSGeomFromWKT(const char *wkt);
134: extern char GEOS_DLL *GEOSGeomToWKT(const GEOSGeometry* g);

Since you don't get a warning on 134 I suppose it should be:

134: extern char * GEOS_DLL GEOSGeomToWKT(const GEOSGeometry* g);

Can you try ?

--strk;

> 
> ..\ogr\geos_c.h(134) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(151) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(154) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(168) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(174) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(225) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(226) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(227) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(234) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(236) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(239) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(256) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(257) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(258) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(260) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(261) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(262) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(264) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(265) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(266) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(267) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(274) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(277) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(278) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(279) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(344) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(357) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(364) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> ..\ogr\geos_c.h(373) : warning C4518: '__declspec(dllexport ) ' :
> storage-class or type specifier(s) unexpected here; ignored
> 
> I am still unable to build GDAL with GEOS.
> 
> Best Regards
> 
> Mir
> 
> 
> On 11/14/06, strk at refractions.net <strk at refractions.net> wrote:
> >
> >Argh.. sounds related to latest 'const-correctness' or 'integer
> >signedness'
> >changes in the CAPI header file, is this possible ?
> >I'm not an expert of the __declspec(dllexport) thing ...
> >
> >--strk;
> >
> >On Mon, Nov 13, 2006 at 05:13:30PM +0000, Mir Hassan Ali wrote:
> >> Hi Frank,
> >>
> >> I downloaded the GDAL snapshot on 6th November 2006, so i assume it
> >includes
> >> the latest changes. When I compile it without the GEOS support, i.e the
> >> following lines are commented in the nmake.opt file are commented:
> >>
> >>
> >> GEOS_CFLAGS = -IC:/GEOS/trunk/capi -DHAVE_GEOS
> >>
> >> GEOS_LIB = C:/GEOS/trunk/source/geos_c_i.lib
> >> But when I uncomment these lines and try to build the API it gives me
> >the
> >> following link errors:
> >>
> >> Creating library gdal_i.lib and object gdal_i.exp
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSGeomFr
> >> omWKB_buf referenced in function "public: virtual struct GEOSGeom_t *
> >> __thiscall
> >> OGRGeometry::exportToGEOS(void)const " (
> >> ?exportToGEOS at OGRGeometry@@UBEPAUGEOSGe
> >> om_t@@XZ)
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSConvex
> >> Hull referenced in function "public: virtual class OGRGeometry *
> >__thiscall
> >> OGRG
> >> eometry::ConvexHull(void)const " (?ConvexHull at OGRGeometry@@UBEPAV1 at XZ )
> >> ogr.lib(ogrgeometry.obj ) : error LNK2019: unresolved external symbol
> >> _GEOSBounda
> >> ry referenced in function "public: virtual class OGRGeometry *
> >__thiscall
> >> OGRGeo
> >> metry::getBoundary(void)const " ( ?getBoundary at OGRGeometry@@UBEPAV1 at XZ)
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSBuffer
> >> referenced in function "public: virtual class OGRGeometry * __thiscall
> >> OGRGeome
> >> try::Buffer(double,int)const " ( ?Buffer at OGRGeometry@@UBEPAV1 at NH@Z)
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSInters
> >> ection referenced in function "public: virtual class OGRGeometry *
> >> __thiscall OG
> >> RGeometry::Intersection(class OGRGeometry const *)const "
> >> (?Intersection at OGRGeom
> >> etry@@UBEPAV1 at PBV1@@Z)
> >> ogr.lib(ogrgeometry.obj ) : error LNK2019: unresolved external symbol
> >> _GEOSUnion
> >> referenced in function "public: virtual class OGRGeometry * __thiscall
> >> OGRGeomet
> >> ry::Union(class OGRGeometry const *)const "
> >> (?Union at OGRGeometry@@UBEPAV1 at PBV1@@Z
> >> )
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSDiffer
> >> ence referenced in function "public: virtual class OGRGeometry *
> >__thiscall
> >> OGRG
> >> eometry::Difference(class OGRGeometry const *)const " (
> >> ?Difference at OGRGeometry@@
> >> UBEPAV1 at PBV1@@Z)
> >> ogr.lib(ogrgeometry.obj) : error LNK2019: unresolved external symbol
> >> _GEOSSymDif
> >> ference referenced in function "public: virtual class OGRGeometry *
> >> __thiscall O
> >> GRGeometry::SymmetricDifference(class OGRGeometry const *)const "
> >> (?SymmetricDif
> >> ference at OGRGeometry@@UBEPAV1 at PBV1@@Z)
> >> ogr.lib(ogrpolygon.obj) : error LNK2019: unresolved external symbol
> >> _GEOSGetCent
> >> roid referenced in function "public: virtual int __thiscall
> >> OGRPolygon::Centroid
> >> (class OGRPoint *)const " ( ?Centroid at OGRPolygon@@UBEHPAVOGRPoint@@@Z)
> >> gdal13.dll : fatal error LNK1120: 9 unresolved externals
> >> NMAKE : fatal error U1077: 'link' : return code '0x460'
> >> Stop.
> >>
> >> Is there something else that I need to do in addition to the changes
> >> mentioned above to the nmake.opt file. Please note that I am using the
> >> latest version of the GEOS API. I checked it out from the subversion
> >trunk
> >> and built it. It builds fine without any errors or warnings.
> >>
> >> Best Regards
> >_______________________________________________
> >geos-devel mailing list
> >geos-devel at geos.refractions.net
> >http://geos.refractions.net/mailman/listinfo/geos-devel
> >

> _______________________________________________
> geos-devel mailing list
> geos-devel at geos.refractions.net
> http://geos.refractions.net/mailman/listinfo/geos-devel


-- 

 /"\    ASCII Ribbon Campaign
 \ /    Respect for low technology.
  X     Keep e-mail messages readable by any computer system.
 / \    Keep it ASCII. 




More information about the geos-devel mailing list