Re: Solaris SONAME not matching libraries

From: Zdenek Kotala <Zdenek(dot)Kotala(at)Sun(dot)COM>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Mark Round <mark(at)markround(dot)com>, pgsql-ports(at)postgresql(dot)org
Subject: Re: Solaris SONAME not matching libraries
Date: 2007-05-29 12:16:48
Message-ID: 465C19B0.1070500@sun.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ports

Tom Lane wrote:
> Mark Round <mark(at)markround(dot)com> writes:
>> As you can see, the file is installed with the name "plpgsql.so",
>> although it's SONAME according to elfdump is set to libplpgsql.so.1.
>> Why the discrepancy ?
>
> It's an artifact of the Makefile rules we use to generate shared
> libraries --- Makefile.shlib insists on building any shared library
> under the name 'libsomething'. Is it important enough to fix?

I think it is minor bug. SONAME is used by linker to setup dependencies
(NEEDED) in a final binary. Plpgsql is loaded dynamically and postmaster
is not linked with this library directly. It means that this problem
does not occur anywhere. I don't expect that somebody will link these
libraries and create separate binary.

However, if I look into lib directory there are only five libraries with
lib prefix and 60 without prefix.

I suggested to introduce SO_PREFIX variable which will be used for
affected five libraries in their makefiles. And also adjust pgxs.mk to
keep name untouched.

Zdenek

In response to

Responses

Browse pgsql-ports by date

  From Date Subject
Next Message Mark Round 2007-05-29 20:56:56 Re: Solaris SONAME not matching libraries
Previous Message Tom Lane 2007-05-28 16:58:44 Re: Solaris SONAME not matching libraries