[GRASS-dev] GRASS 6.5 GEOS build fails

Markus Neteler neteler at osgeo.org
Mon Aug 3 14:28:45 EDT 2009


On Mon, Aug 3, 2009 at 8:19 PM, Glynn Clements<glynn at gclements.plus.com> wrote:
>
> Markus Neteler wrote:
>
>> > LOC_CHECK_LIBS checks for a specific symbol, so it should be
>> > straightforward to check for a symbol which is only present in 3.x.
>>
>> Something like this?
>> [neteler at localhost grass70]$ svn diff configure.in
>
>> +  LOC_CHECK_LIBS(geos,GEOSGeom_createLinearRing,GEOS,$GEOS_CFLAGS,$GEOS_LIBS,,,,)
>
> Probably:
>
>        LOC_CHECK_LIBS(geos,GEOSGeom_createLinearRing,GEOS,$GEOS_LIBS,GEOS_LIBS)

Ok  but same effect.

>> (still no solution to the original problem:
>>  perhaps my much liked "-Werror-implicit-function-declaration" is the problem?)
>
> Your original problem appears to be that you don't have a compatible
> version of GEOS installed. It's compiling okay, so it looks like the
> headers are compatible but the library isn't. Maybe a problem with
> 32-bit and 64-bit libraries?

[neteler at localhost grass70]$ /usr/bin/geos-config --libs
-L/usr/lib64 -lgeos

[neteler at localhost grass70]$ ldd /usr/lib64/libgeos.so
        linux-vdso.so.1 =>  (0x00007fff2e1fe000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007ff225a52000)
        libm.so.6 => /lib64/libm.so.6 (0x00007ff2257ce000)
        libc.so.6 => /lib64/libc.so.6 (0x00007ff22546b000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ff225255000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ff2260ca000)

[neteler at localhost grass70]$ file /usr/lib64/libgeos.so
/usr/lib64/libgeos.so: symbolic link to `libgeos-3.0.3.so'

[neteler at localhost grass70]$ file /usr/lib64/libgeos-3.0.3.so
/usr/lib64/libgeos-3.0.3.so: ELF 64-bit LSB shared object, x86-64,
version 1 (SYSV), dynamically linked, stripped

The RPM looks ok but I'll recompile it from the source tarball.

Markus


More information about the grass-dev mailing list