Re: [INTERFACES] problems with pgaccess

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Francisco Alonso <alonsarp(at)fcu(dot)um(dot)es>
Cc: pgsql-interfaces(at)postgreSQL(dot)org
Subject: Re: [INTERFACES] problems with pgaccess
Date: 1999-02-24 15:20:25
Message-ID: 14230.919869625@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

Francisco Alonso <alonsarp(at)fcu(dot)um(dot)es> writes:
> $ wish -f pgaccess.tcl template1
> Error in startup script: couldn't load file "libpgtcl.so": libpq.so.1:
> cannot open shared object file: No such file or directory

Can you run "psql" successfully? If not, you probably forgot to set up
your environment so that the Postgres shared libraries can be found by
the dynamic loader. Under Linux I think you need to run ldconf to add
/usr/local/pgsql/lib (or wherever you put the libraries); not sure about
the details though.

If psql runs but you can't dynamically load libpgtcl, you are probably
running into the second-level-dependency problem: libpgtcl depends on
libpq, which in turn depends on libcrypt (if libcrypt is a separate
library on your system). A lot of dynamic loaders are too stupid to do
the right thing here. You have to help them out by marking libpgtcl as
depending directly on libcrypt. Try applying the following patch to
Makefile.in and rebuilding libpgtcl. (This patch will be in 6.5, and
I'm considering retrofitting it into 6.4.3 as well --- so let me know
if it helps.)

regards, tom lane

*** REL6_4/pgsql/src/interfaces/libpgtcl/Makefile.in Sun Oct 18 20:00:41 1998
--- pgsql/src/interfaces/libpgtcl/Makefile.in Sun Feb 7 17:10:45 1999
***************
*** 27,33 ****

OBJS= pgtcl.o pgtclCmds.o pgtclId.o

! SHLIB_LINK= -L../libpq -lpq

# Shared library stuff, also default 'all' target
include $(SRCDIR)/Makefile.shlib
--- 27,38 ----

OBJS= pgtcl.o pgtclCmds.o pgtclId.o

! SHLIB_LINK+= -L../libpq -lpq
!
! # If crypt is a separate library, rather than part of libc, it may need
! # to be referenced separately to keep (broken) linkers happy. (This is
! # braindead; users of libpq should not need to know what it depends on.)
! SHLIB_LINK+= $(findstring -lcrypt,$(LIBS))

# Shared library stuff, also default 'all' target
include $(SRCDIR)/Makefile.shlib

Browse pgsql-interfaces by date

  From Date Subject
Next Message Michael Zhang 1999-02-24 15:38:42 Newbie Q: How to deal with date/time with libpq or ecpg?
Previous Message jose' soares 1999-02-24 14:07:11 Re: [INTERFACES] xmin field in a newly created table.