Обсуждение: how to install just client libraries on windows?
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
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
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
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
On 12/02/2009 06:59 AM, Craig Ringer wrote:
On 2/12/2009 7:10 AM, raf wrote: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.<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
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
On 12/02/2009 09:42 AM, Craig Ringer wrote:
On 2/12/2009 10:40 AM, Sachin Srivastava wrote:We have updated the installer to avoid configuring ld.so.conf and instead use rpath linking.Dave: Are there sources available for the EnterpriseDBCraig, we always hear to what the community says as that will help us
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.
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
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
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
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