On Tue, Dec 6, 2011 at 12:13 AM, Rafael Ostertag
<raos@opencsw.org> wrote:
Hi list
I'm in the course of creating PostgreSQL packages for Solaris. One of the
requirement is to install different PostgreSQL versions in parallel, the other
is to have all the libraries stuffed in one place.
Now, if I install, let's say, pgsql 8.3 and 8.4 in parallel and all libraries
go to /opt/csw/lib, I end up with:
$ ls -l /opt/csw/lib/libpq*
lrwxrwxrwx 1 root root libpq.so -> libpq.so.5.2
lrwxrwxrwx 1 root root libpq.so.5 -> libpq.so.5.2
-rwxr-xr-x 1 root bin libpq.so.5.1
-rwxr-xr-x 1 root bin libpq.so.5.2
Which in turn leads to 8.3 binaries loading libpq.so.5.2, effectively mixing
8.3 binaries with 8.4 libraries.
Finally, the question: How bad is it having a pgsql binary version X.Y using a
library X.Z?
To overcome this issues,use "--prefix=PREFIX " option while running "configure",so that PostgreSQL 8.3 version related directories [i.e bin,include,lib,share] will store in preferred PREFIX location.
Ex: ./configure --prefix=/usr/local/pgsql83
./configure --prefix=/usr/local/pgsql84
Once completion of PostgreSQL installation,you will see "bin,include,lib,share" directories are created under the /usr/local/pgsql83 location.
--Raghu Ram