Re: unix socket location confusion

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: unix socket location confusion
Дата
Msg-id 3184.1427063304@sss.pgh.pa.us
обсуждение исходный текст
Ответ на unix socket location confusion  (Scott Ribe <scott_ribe@elevated-dev.com>)
Ответы Re: unix socket location confusion  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-admin
Scott Ribe <scott_ribe@elevated-dev.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


В списке pgsql-admin по дате отправления:

Предыдущее
От: Scott Ribe
Дата:
Сообщение: unix socket location confusion
Следующее
От: Tom Lane
Дата:
Сообщение: Re: unix socket location confusion