[postgis-devel] PostgreSQL 7.5 and PostGIS 0.8.1 or cvs

Craig Miller craig.miller at spatialminds.com
Fri May 7 14:00:47 PDT 2004


I am building against 7.5devel.  Postgis 0.8.1's Makefile defaults to 7.4
rather than 7.5.  I will grab a postgis snapshot from CVS and see if I can
get that to build.

Glad to hear the code is in CVS already.  Thanks!

--Craig


-----Original Message-----
From: strk [mailto:strk at keybit.net]
Sent: Friday, May 07, 2004 3:51 AM
To: Craig Miller
Cc: postgis-devel at postgis.refractions.net
Subject: Re: [postgis-devel] PostgreSQL 7.5 and PostGIS 0.8.1 or cvs


On Thu, May 06, 2004 at 02:10:52PM -0700, Craig Miller wrote:
> Hi,
>
> I am trying to compile the unsupported combination of PostgreSQL 7.5
> (snapshot) and PostGIS 0.8.1 (or CVS).  I know this question has come up
> before, but has anyone looked at the problem with the call to
> canonicalize_qual and determined how the call should be made to the
version
> of this method included in pgsql 7.5?
>
> The code:
>  /*
>          * If the index is partial, AND the index predicate with the
>          * explicitly given indexquals to produce a more accurate idea of
> the
>          * index restriction.  This may produce redundant clauses, which
we
>          * hope that cnfify and clauselist_selectivity will deal with
>          * intelligently.
>          *
>          * Note that index->indpred and indexQuals are both in
implicit-AND
> form
>          * to start with, which we have to make explicit to hand to
>          * canonicalize_qual, and then we get back implicit-AND form
again.
>          */
>         if (index->indpred != NIL)
>         {
>                 Expr       *andedQuals;
>
>                 andedQuals =
> make_ands_explicit(nconc(listCopy(index->indpred),
>
>           indexQuals));
>                 selectivityQuals = canonicalize_qual(andedQuals, true);
>         }
>
>
> The error:
>
>
gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declaratio
>
ns -g -fexceptions   -I. -DFRONTEND -DSYSCONFDIR='"/pgSpatial/etc/postgresql
>
"'  -DUSE_VERSION=74  -I../../src/include -I./src/include/port/win32 -DEXEC_
> BACKEND  "-I../../src/include/port/win32"  -c -o postgis_estimate.o
> postgis_estimate.c
>
> postgis_estimate.c: In function `genericcostestimate2':
> postgis_estimate.c:751: too many arguments to function `canonicalize_qual'
> postgis_estimate.c:751: warning: assignment from incompatible pointer type
> make: *** [postgis_estimate.o] Error 1

You are compiling against pg74, not 75 (-DUSE_VERSION=74).
To detect pgsql version, postgis Makefile goes:

                        ifneq ($(findstring 7.4,$(VERSION)),)
                                USE_VERSION=74
                        else
                                USE_VERSION=75
                        endif

What does your postgres snapshot's global Makefile use as $(VERSION) ?
--strk;


>
> Thanks for the help,
> --Craig
>
>
> _______________________________________________
> postgis-devel mailing list
> postgis-devel at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-devel







More information about the postgis-devel mailing list