Re: unix socket location confusion

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Scott Ribe <scott_ribe(at)elevated-dev(dot)com>
Cc: Postgres Maillist <pgsql-admin(at)postgresql(dot)org>
Subject: Re: unix socket location confusion
Date: 2015-03-22 22:28:24
Message-ID: 3184.1427063304@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Scott Ribe <scott_ribe(at)elevated-dev(dot)com> writes:
> - on OS X 10.10.2
> - downloaded 9.3.6 sources
> - ./configure --with-openssl --prefix=/my/specific/location/pg-9.3
> - make & install
> - cd /my/specific/location/
> - pg-9.3/bin/postmaster -D...
> - socket is created in /tmp, as expected
> - pg-9.3/bin/psql mydb
> - gives error about not being able to connect to /var/pgsql_socket/.s.PGSQL.5432
> - ???

OS X ships with a libpq that's configured that way:

$ ls -l /usr/lib/libpq*
-rwxr-xr-x 1 root wheel 155696 Sep 9 2014 /usr/lib/libpq.5.5.dylib
lrwxr-xr-x 1 root wheel 15 Oct 18 13:00 /usr/lib/libpq.5.dylib -> libpq.5.5.dylib
lrwxr-xr-x 1 root wheel 15 Oct 18 13:00 /usr/lib/libpq.dylib -> libpq.5.5.dylib
$ strings /usr/lib/libpq.5.5.dylib | grep var
/var/pgsql_socket
$ strings /usr/lib/libpq.5.5.dylib | grep tmp
$

Evidently your psql is linking to this libpq and not the one you built.
You can fix that with suitable use of rpath; although I'm not sure why
an out-of-the-box build doesn't do that for you. It works fine for
me:

$ otool -L ~/testversion/bin/psql
/Users/tgl/testversion/bin/psql:
/Users/tgl/testversion/lib/libpq.5.dylib (compatibility version 5.0.0, current version 5.8.0)
/usr/lib/libedit.3.dylib (compatibility version 2.0.0, current version 3.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)

and I don't believe I'm using any nondefault switches to get that.

regards, tom lane

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Tom Lane 2015-03-22 22:43:10 Re: unix socket location confusion
Previous Message Scott Ribe 2015-03-22 20:33:24 unix socket location confusion