Thread: how to install just client libraries on windows?

how to install just client libraries on windows?

From
raf
Date:
hi,

i just tried to upgrade libpq.dll on windows and couldn't
work out how to do it. in the past, with 8.3.x, i knew i had
to download the entire server even though i only wanted
the client but at least i was able to install just the
client software.

now, with 8.4 (enterprisedb one click installer), i tried
to deselect what looked like server-related options and
kept the client-related options selected but the installer
kept telling me that something i had selected required
the server to also be selected. i had to unselected all of the
options before that error went away. since none of the options
was just the client library i thought there was a remote
chance that it might make some sense especially when the
installer happily proceeded with the installation process
even though no components were selected. i figured it must
know something i didn't :-)

anyway, all that was installed was the stackbuilder.
there was no PostgresPlus/8.4SS/bin/libpq.dll as i
had expected.

so, what have i done wrong? how do i use the one click
installer to just install libpq.dll? i don't mind installing
other client software along with it. i just don't want the
server installed. should i install the server and client
software and then uninstall the server software?

cheers,
raf


Re: how to install just client libraries on windows?

From
Dave Page
Date:
On Tue, Dec 1, 2009 at 1:52 AM, raf <raf@raf.org> wrote:
> hi,
>
> i just tried to upgrade libpq.dll on windows and couldn't
> work out how to do it. in the past, with 8.3.x, i knew i had
> to download the entire server even though i only wanted
> the client but at least i was able to install just the
> client software.
>
> now, with 8.4 (enterprisedb one click installer), i tried
> to deselect what looked like server-related options and
> kept the client-related options selected but the installer
> kept telling me that something i had selected required
> the server to also be selected. i had to unselected all of the
> options before that error went away. since none of the options
> was just the client library i thought there was a remote
> chance that it might make some sense especially when the
> installer happily proceeded with the installation process
> even though no components were selected. i figured it must
> know something i didn't :-)
>
> anyway, all that was installed was the stackbuilder.
> there was no PostgresPlus/8.4SS/bin/libpq.dll as i
> had expected.
>
> so, what have i done wrong? how do i use the one click
> installer to just install libpq.dll? i don't mind installing
> other client software along with it. i just don't want the
> server installed. should i install the server and client
> software and then uninstall the server software?

You've installed Postgres Plus Standard Server, not the PostgreSQL
one-click installer. The easiest way to just get libpq and the
supporting libraries would be from the tarball distros:
http://www.enterprisedb.com/products/pgbindownload.do

Just extract, and grab the DLLs.

--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com

Re: how to install just client libraries on windows?

From
raf
Date:
Dave Page wrote:

> On Tue, Dec 1, 2009 at 1:52 AM, raf <raf@raf.org> wrote:
> > hi,
> >
> > i just tried to upgrade libpq.dll on windows and couldn't
> > work out how to do it. in the past, with 8.3.x, i knew i had
> > to download the entire server even though i only wanted
> > the client but at least i was able to install just the
> > client software.
> >
> > now, with 8.4 (enterprisedb one click installer), i tried
> > to deselect what looked like server-related options and
> > kept the client-related options selected but the installer
> > kept telling me that something i had selected required
> > the server to also be selected. i had to unselected all of the
> > options before that error went away. since none of the options
> > was just the client library i thought there was a remote
> > chance that it might make some sense especially when the
> > installer happily proceeded with the installation process
> > even though no components were selected. i figured it must
> > know something i didn't :-)
> >
> > anyway, all that was installed was the stackbuilder.
> > there was no PostgresPlus/8.4SS/bin/libpq.dll as i
> > had expected.
> >
> > so, what have i done wrong? how do i use the one click
> > installer to just install libpq.dll? i don't mind installing
> > other client software along with it. i just don't want the
> > server installed. should i install the server and client
> > software and then uninstall the server software?
>
> You've installed Postgres Plus Standard Server, not the PostgreSQL
> one-click installer.

ok but that's not really relevant. i just tried the non-plus
version and it also wouldn't let me install just the client
software. it assumed that i wanted to install the server.

the 8.3 postgres plus standard server let me install
just client software. the 8.4 one doesn't. that means
there is no client installer for windows anymore.
that seems like a mistake to me.

<aside>
not only that, but on a windows host on which i had
installed the 8.3 client and server software, when i
uninstalled the server leaving the client software behind,
the client software was no longer complete and couldn't
be used (i.e. python's pygresql module failed to load
even though libpq.dll was there because something else
wasn't there). i had to rsync files over from another
host that had only had the client software installed.
</aside>

it seems that the client software is being treated as
a second class citizen or worse.

> The easiest way to just get libpq and the
> supporting libraries would be from the tarball distros:
> http://www.enterprisedb.com/products/pgbindownload.do
>
> Just extract, and grab the DLLs.

thanks but no thanks. i can see where this might lead.
i don't know what files are needed and what ones aren't.
it probably won't just be the dlls that are needed and
i'll waste half a day experimenting to see what's really
needed. plus it only helps me. it doesn't help anyone else.

perhaps your instructions are complete and correct and
perhaps i'm being overly pessimistic but i would really
prefer an installer written by someone who does know what
is needed. as i imagine would most people who want to make
postgres accessible from windows hosts.

even if your instructions are complete and correct, i
doubt that you want to continually repeat them on this
list to everyone who wants to just install client software
on windows.

i can think of an easier way to get what i want. i'll just
leave the 8.3 client software in place until it stops working
against some future version of the server and hope that by
that time someone has realised that there does need to be
a windows client software installer and i'll run that. :-)

or i'll just install the server on every windows host that
needs to connect to a postgres server even though it wastes
hundreds of megabytes per host.

sorry if i sound like i'm whinging but i can't help seeing
this as a huge oversight in a brilliant piece of software.
maybe it's just me.

anyway, happy holidays!

> --
> Dave Page
> EnterpriseDB UK: http://www.enterprisedb.com

cheers,
raf


Re: how to install just client libraries on windows?

From
Craig Ringer
Date:
On 2/12/2009 7:10 AM, raf wrote:

> <aside>
> not only that, but on a windows host on which i had
> installed the 8.3 client and server software, when i
> uninstalled the server leaving the client software behind,
> the client software was no longer complete and couldn't
> be used (i.e. python's pygresql module failed to load
> even though libpq.dll was there because something else
> wasn't there). i had to rsync files over from another
> host that had only had the client software installed.
> </aside>

Ouch. The installer is not not properly tracking the sharing of DLLs
between components.

>> The easiest way to just get libpq and the
>> supporting libraries would be from the tarball distros:
>> http://www.enterprisedb.com/products/pgbindownload.do
>>
>> Just extract, and grab the DLLs.
>
> thanks but no thanks. i can see where this might lead.
> i don't know what files are needed and what ones aren't.
> it probably won't just be the dlls that are needed and
> i'll waste half a day experimenting to see what's really
> needed. plus it only helps me. it doesn't help anyone else.

Dependency Walker (depends.exe) from dependencywalker.com takes care of
that. It really is trivial. However, I agree that it's a cludgy way to
do things that shouldn't be necessary.

It'd be good to see a simple MSI installer of the client libs. The Pg
server installer could always just bundle the client lib installer, but
permit it to be distributed separately as well. That'd save on install
complexity and size as well.

EnterpriseDB are currently handling the creation of the binary
installers for PostgreSQL. I've been talking with them about some other
installer issues (where the interferes with system libraries on Linux)
too, so hopefully they'll be doing some work on their installers soon.
Maybe they can look at splitting the client library installer into a
separate package too.

Dave: Are there sources available for the EnterpriseDB
installer/packaging system? I'd like to get into the linux library path
patcking problem myself, since nobody at EDB seemed to be interested in
the issues when discussed on -general last week.

--
Craig Ringer

Re: how to install just client libraries on windows?

From
Sachin Srivastava
Date:
On 12/02/2009 06:59 AM, Craig Ringer wrote:
On 2/12/2009 7:10 AM, raf wrote:

<aside>
not only that, but on a windows host on which i had
installed the 8.3 client and server software, when i
uninstalled the server leaving the client software behind,
the client software was no longer complete and couldn't
be used (i.e. python's pygresql module failed to load
even though libpq.dll was there because something else
wasn't there). i had to rsync files over from another
host that had only had the client software installed.
</aside>

Ouch. The installer is not not properly tracking the sharing of DLLs between components.

The easiest way to just get libpq and the
supporting libraries would be from the tarball distros:
http://www.enterprisedb.com/products/pgbindownload.do

Just extract, and grab the DLLs.

thanks but no thanks. i can see where this might lead.
i don't know what files are needed and what ones aren't.
it probably won't just be the dlls that are needed and
i'll waste half a day experimenting to see what's really
needed. plus it only helps me. it doesn't help anyone else.

Dependency Walker (depends.exe) from dependencywalker.com takes care of that. It really is trivial. However, I agree that it's a cludgy way to do things that shouldn't be necessary.

It'd be good to see a simple MSI installer of the client libs. The Pg server installer could always just bundle the client lib installer, but permit it to be distributed separately as well. That'd save on install complexity and size as well.

EnterpriseDB are currently handling the creation of the binary installers for PostgreSQL. I've been talking with them about some other installer issues (where the interferes with system libraries on Linux) too, so hopefully they'll be doing some work on their installers soon. Maybe they can look at splitting the client library installer into a separate package too.

Dave: Are there sources available for the EnterpriseDB installer/packaging system? I'd like to get into the linux library path patcking problem myself, since nobody at EDB seemed to be interested in the issues when discussed on -general last week.
Craig, we always hear to what the community says as that will help us improve the installer a lot. We have already committed a fix as per the discussion and are in a process of verifying the changes and will be hoping to release it very soon.
 

--
Craig Ringer



--
Regards,
Sachin Srivastava
EnterpriseDB, the Enterprise Postgres company.

Re: how to install just client libraries on windows?

From
Craig Ringer
Date:
On 2/12/2009 10:40 AM, Sachin Srivastava wrote:

>> Dave: Are there sources available for the EnterpriseDB
>> installer/packaging system? I'd like to get into the linux library
>> path patcking problem myself, since nobody at EDB seemed to be
>> interested in the issues when discussed on -general last week.
> Craig, we always hear to what the community says as that will help us
> improve the installer a lot. We have already committed a fix as per the
> discussion and are in a process of verifying the changes and will be
> hoping to release it very soon.

Great - I'm glad to hear it. I had no idea you were working on it, as
you didn't respond on the list except to suggest that you'd avoid
installing libxml2 if it was already there.

Is that what you man by the fix? Or are you updating the installer to
avoid messing with ld.so.conf by using rpath linking instead?

--
Craig Ringer

Re: how to install just client libraries on windows?

From
Sachin Srivastava
Date:
On 12/02/2009 09:42 AM, Craig Ringer wrote:
On 2/12/2009 10:40 AM, Sachin Srivastava wrote:

Dave: Are there sources available for the EnterpriseDB
installer/packaging system? I'd like to get into the linux library
path patcking problem myself, since nobody at EDB seemed to be
interested in the issues when discussed on -general last week.
Craig, we always hear to what the community says as that will help us
improve the installer a lot. We have already committed a fix as per the
discussion and are in a process of verifying the changes and will be
hoping to release it very soon.

Great - I'm glad to hear it. I had no idea you were working on it, as you didn't respond on the list except to suggest that you'd avoid installing libxml2 if it was already there.

Is that what you man by the fix? Or are you updating the installer to avoid messing with ld.so.conf by using rpath linking instead?
We have updated the installer to avoid configuring ld.so.conf and instead use rpath linking. 

--
Craig Ringer


--
Regards,
Sachin Srivastava
EnterpriseDB, the Enterprise Postgres company.

Re: how to install just client libraries on windows?

From
Craig Ringer
Date:
On 2/12/2009 12:37 PM, Sachin Srivastava wrote:

> We have updated the installer to avoid configuring ld.so.conf and
> instead use rpath linking.

Great - hopefully that'll save you time and hassle with the installer in
the long run. Thanks for listening - I for one do appreciate the work
you folks do maintaining the installers, and don't mean my comments on
any flaws in them to detract from that. I've had enough "fun" building
and distributing binaries to know what a thankless task it can be.

--
Craig Ringer

Re: how to install just client libraries on windows?

From
Dave Page
Date:
On Wed, Dec 2, 2009 at 1:29 AM, Craig Ringer
<craig@postnewspapers.com.au> wrote:

> EnterpriseDB are currently handling the creation of the binary installers
> for PostgreSQL. I've been talking with them about some other installer
> issues (where the interferes with system libraries on Linux) too, so
> hopefully they'll be doing some work on their installers soon. Maybe they
> can look at splitting the client library installer into a separate package
> too.

There is virtually no call for a client library installer - I can
recall maybe half a dozen requests for one since 8.0, and most of
those ppl actually wanted psql etc. Libpq is not like an ODBC or JDBC
driver for example, where it may be plugged into any number of generic
apps, but must be specifically linked with each application, thus
application vendors will ship it themselves with their apps. The guys
that are doing that will generally need more than just the client
libraries - for example, they'll need headers and import libraries as
well.

The closest thing we have to a client installer is probably pgAdmin,
which will install libpq and it's dependencies, as well as psql,
pg_dump/pg_dumpall/pg_restore, and of course, pgAdmin.

> Dave: Are there sources available for the EnterpriseDB installer/packaging
> system? I'd like to get into the linux library path patcking problem myself,
> since nobody at EDB seemed to be interested in the issues when discussed on
> -general last week.

As Sachin mentioned, a patch for that was committed late last night
and should move into QA today. The source is periodically pushed to
git.postgresql.org though.

I'll also ask the team to acknowledge any future issues on-list, so
its clear they are being worked on.

--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com

Re: how to install just client libraries on windows?

From
"Massa, Harald Armin"
Date:
Dave,

> The closest thing we have to a client installer is probably pgAdmin,
> which will install libpq and it's dependencies, as well as psql,
> pg_dump/pg_dumpall/pg_restore, and of course, pgAdmin.

maybe we should promote this information to the public?

Calling "pgAdmin" additionally "the client installer" surely fits the
needs of many, many Windows-Users who just need "the PostgreSQL client
on their machines".

Harald

--
GHUM Harald Massa
persuadere et programmare
Harald Armin Massa
Spielberger Straße 49
70435 Stuttgart
0173/9409607
no fx, no carrier pigeon
-
%s is too gigantic of an industry to bend to the whims of reality