Re: [GENERAL] libpq.so.2.0 problem - Mailing list pgsql-ports

From Peter Eisentraut
Subject Re: [GENERAL] libpq.so.2.0 problem
Date
Msg-id Pine.LNX.4.21.0011072126260.1192-100000@peter.localdomain
Whole thread Raw
In response to Re: [GENERAL] libpq.so.2.0 problem  (Lamar Owen <lamar.owen@wgcr.org>)
List pgsql-ports
Lamar Owen writes:

> I could say more, but I've said it elsewhere, and it really doesn't
> deserve repeating, as the decision to continue library versioning in the
> core tarball has been made, and I'm not going to question that decision
> here.

(If you're arguing against versions in shared libraries you're up against
much higher powers than PostgreSQL.)

I've found the problem.  Trond was right, it was the fact that the
programs are linked against libpq.so.2.1, not libpq.so.2.  And I was
right, too :-), in that it was the -soname switch, which essentially seems
to say "If you link with me, record that fact that I'm really <soname>."

If you want to fix this in the RPMs, do something along the following
lines (manually simulated patch) in Makefile.shlib:

 ifeq ($(PORTNAME), linux)
   install-shlib-dep     := install-shlib
   shlib                 := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
-  LDFLAGS_SL            := -Bdynamic -shared -soname $(shlib)
+  LDFLAGS_SL            := -Bdynamic -shared -soname lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
   LDFLAGS_ODBC          := -Bsymbolic -lc -lm
   SHLIB_LINK            += -lc
   CFLAGS                        += $(CFLAGS_SL)
 endif

Apps linked against the old libraries will not be fixed until relinked.

--
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/


pgsql-ports by date:

Previous
From: Lamar Owen
Date:
Subject: Re: [GENERAL] libpq.so.2.0 problem
Next
From: Lamar Owen
Date:
Subject: Re: [GENERAL] libpq.so.2.0 problem