Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!! - Mailing list pgsql-interfaces

From Tom Lane
Subject Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!!
Date
Msg-id 19217.910544019@sss.pgh.pa.us
Whole thread Raw
In response to Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!!  (leif@danmos.dk)
Responses Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!!  ("Ken J. Wright" <ken@ori-ind.com>)
List pgsql-interfaces
leif@danmos.dk writes:
>    I've just downloaded the new pgaccess 0.92b. Of course I experienced
> the 'unresolved crypt' problem. I made a mod. both in the Makefile
> for libpq and libpgtcl as follows:
>
> diff on libpq/Makefile:
>
> 35,37d34
> <
> < LIBS            = -lcrypt
> <
> 42c39
> <     LDFLAGS_SL = -Bdynamic -shared -soname libpq.so.$(SO_MAJOR_VERSION)
> ---
> >     LDFLAGS_SL = -shared -soname libpq.so.$(SO_MAJOR_VERSION)
> 100c97
> <     $(LD) $(LDFLAGS_SL) -o $@ $(OBJS) $(LIBS)
> ---
> >     $(LD) $(LDFLAGS_SL) -o $@ $(OBJS)
>
> diff on libpgtcl/Makefile:
>
> 42c42
> <     LDFLAGS_SL        = -Bdynamic -shared
> ---
> >     LDFLAGS_SL        = -shared


Which version did you say you were using?  There is no assignment of
LDFLAGS_SL in either libpq's or libpgtcl's Makefile in 6.4 --- that's
being done in src/Makefile.shlib now.  I wonder whether you have some
6.4 beta version.

Still, this -Bdynamic switch looks interesting.  Constantin, if you
add that to LDFLAGS_SL in src/Makefile.shlib (in the Linux case, of
course) does it work any better for you?


> After compiling and installing this resulted in the following ourput from
> 'ldd libpgtcl.so':
>     libpq.so.1 => /usr/local/pgsql/lib/libpq.so.1 (0x4000b000)
>     libcrypt.so.1 => /lib/libcrypt.so.1 (0x40018000)
>     libc.so.6 => /lib/libc.so.6 (0x40045000)
>     /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00000000)

That looks pretty good...


> Error in startup script: First argument is not a valid query result
>     while executing
> "pg_result $pgres -numTuples"
>
> I am using Tcl/Tk 8.0, but I am using PostgreSQL 6.3.2. Is this a
> 6.3.2/6.4 compatibility issue?

6.4 libpq (and hence libpgtcl) cannot talk to a 6.3.2 backend at all.
But that should have resulted in a failure in the pg_connect statement,
because it would have been detected by the old backend as an unsupported
protocol version number.

I wonder whether what you actually have is a couple of different pre-6.4
code snapshots.  We changed the FE/BE protocol a couple of times between
6.3.2 and 6.4beta1, but we only changed the protocol version number
once.  Some of those intermediate states of the code would have failed
to talk to each other with peculiar symptoms, perhaps like this.

BTW, which Linux distribution are you using?

            regards, tom lane

pgsql-interfaces by date:

Previous
From: leif@danmos.dk
Date:
Subject: Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!!
Next
From: leif@danmos.dk
Date:
Subject: Re: [INTERFACES] crypt not included when compiling libpgtcl !!!!!!!