libpq version

php.internals

Edin Kadribasic

21 years ago
Which version of libpq is required to compile the new pgsql prepare/execute commands in php 5.1? I'm getting compilation probles with 8.0.0 client lib where PQprepare() and PQsendPrepare() seem to be missing. Edin

Derick Rethans

21 years ago
On Tue, 5 Apr 2005, Edin Kadribasic wrote:
> Which version of libpq is required to compile the new pgsql prepare/execute > commands in php 5.1? I'm getting compilation probles with 8.0.0 client lib > where PQprepare() and PQsendPrepare() seem to be missing.
I would suggest to fix this, as there are still plenty of people using 7.x... Derick

Edin Kadribasic

21 years ago
Derick Rethans wrote:
> I would suggest to fix this, as there are still plenty of people using > 7.x...
This is only relevant on Windows, autoconf takes care of it on unix platforms. Edin

Christopher Kings-Lynne

21 years ago
>> I would suggest to fix this, as there are still plenty of people using >> 7.x... > > This is only relevant on Windows, autoconf takes care of it on unix > platforms.
I strongly suspect that he is not in fact linking against libpq version 8. Is ONLY PQprepare and PQsendPrepare missing? What about the rest? Gah - Windows. I'm not able to build on windows... I just followed the existing windows config.w32 which already required PostgreSQL 7.4 or above libpq (AFAICT). The functions I added require 7.4 or above as well. There is no difference between 7.4 and 8.0's libpq in terms of functions. Basically before I made any changes, this was in config.w32: ADD_FLAG("CFLAGS_PGSQL", "/D HAVE_PG_CONFIG_H /D PGSQL_EXPORTS /D HAVE_PQSETNONBLOCKING /D HAVE_PQCMDTUPLES /D HAVE_PQCLIENTENCODING /D HAVE_PQESCAPE /D HAVE_PQPARAMETERSTATUS /D HAVE_PGTRANSACTIONSTATUS"); Note that that FORCES PQparameterStatus and PQtransactionStatus to be assumed to exist. Both of those functions are PostgreSQL 7.4 only and in fact it was Edin himself who added them. All I did was add a bunch more /D's: ADD_FLAG("CFLAGS_PGSQL", "/D HAVE_PG_CONFIG_H /D PGSQL_EXPORTS /D HAVE_PQSETNONBLOCKING /D HAVE_PQCMDTUPLES /D HAVE_PQCLIENTENCODING /D HAVE_PQESCAPE /D HAVE_PQPARAMETERSTATUS /D HAVE_PGTRANSACTIONSTATUS /D HAVE_PQEXECPARAMS /D HAVE_PQPREPARE /D HAVE_PQEXECPREPARED /D HAVE_PQRESULTERRORFIELD /D HAVE_PQSENDQUERYPARAMS /D HAVE_PQSENDPREPARE /D HAVE_PQSENDQUERYPREPARED /D HAVE_PQPUTCOPYDATA /D HAVE_PQPUTCOPYEND /D HAVE_PQGETCOPYDATA /D HAVE_PQSETERRORVERBOSITY /D HAVE_PQUNESCAPEBYTEA"); However, all those new /D's are also 7.4 only. So I don't see exactly what I did any differently? If someone wants to make Windows build against versions pre-7.4, then I don't know how to do it. I just assumed that whoever came before me knew what they were doing :) Chris

Wez Furlong

21 years ago
You're not making much sense here; first you say that you think the errors are because he is not linking against version 8, but then you say that only version 7.4 or higher is required. --Wez. On Apr 5, 2005 9:24 PM, Christopher Kings-Lynne <chriskl@familyhealth.com.au> wrote:

Christopher Kings-Lynne

21 years ago
> You're not making much sense here; first you say that you think the > errors are because he is not linking against version 8, but then you > say that only version 7.4 or higher is required.
As in I suspect (1) he's linking against 7.3 or (2) for some reason the libpq 8.0 windows DLL is specifically missing those two functions, which exist in the Unix version. Chris

Edin Kadribasic

21 years ago
OK, I will upgrade the version of libpq on the snaps box. It probably didn't get updated the last time i upgraded to 8.0.0. Edin ----- Original Message ----- From: "Christopher Kings-Lynne" <chriskl@familyhealth.com.au> To: "Wez Furlong" <kingwez@gmail.com> Cc: "Edin Kadribasic" <edink@emini.dk>; "Derick Rethans" <derick@php.net>; "PHP Internals" <internals@lists.php.net> Sent: Wednesday, April 06, 2005 3:17 PM Subject: Re: [PHP-DEV] libpq version

Christopher Kings-Lynne

21 years ago
> OK, I will upgrade the version of libpq on the snaps box. It probably didn't > get updated the last time i upgraded to 8.0.0.
The thing is the 7.4 version _should_ work just fine... Chris

Christopher Kings-Lynne

21 years ago
> Which version of libpq is required to compile the new pgsql prepare/execute > commands in php 5.1? I'm getting compilation probles with 8.0.0 client lib > where PQprepare() and PQsendPrepare() seem to be missing.
You required the libpq from PostgreSQL 7.4... All use of those two functions is protected by autoconf checks, so I have no idea what's happening. It works fine for me on 8.0.2beta. Care to send me more detailed error messages/output? Chris