Re: Libpq visual c++ build errors, addrinfo and sockaddr_storage redefinition error - Mailing list pgsql-ports

From Magnus Hagander
Subject Re: Libpq visual c++ build errors, addrinfo and sockaddr_storage redefinition error
Date
Msg-id 20080506200147.294acd5c@mha-laptop.hagander.net
Whole thread Raw
In response to Re: Libpq visual c++ build errors, addrinfo and sockaddr_storage redefinition error  ("Pierre Joye" <pierre.php@gmail.com>)
Responses Re: Libpq visual c++ build errors, addrinfo and sockaddr_storage redefinition error  ("Pierre Joye" <pierre.php@gmail.com>)
List pgsql-ports
Pierre Joye wrote:
> >  > We use the last SDK working with VC6 (2003/02). That's sadly a
> >  > requirement for php 5.x. We are working on supporting  2k5 and
> >  > the latest SDK for 5.3+. However VC6 support has to be kept for
> >  > the 5.x branches (at least).
> >
> >  There's your problem, really. 8.3+ does not support VC6 anymore. We
> >  need 7.1 or newer.
>
> I was suspecting this problem. Do you have any experiences of using
> these 2k5 binaries with VC6 (especially in threaded environment)? We
> may give it a try in the next weeks and update it again in 5.2.7 and
> 5.3 if it works well.

It shouldn't be a problem, other than requiring both runtimes to be
present. Unless you use PQtrace() in which case it will be a big
problem.

Basically, as long as you don't free() something in one runtime that
was malloced():d in a nother one, and as long as you don't pass "CRT
pointers" between the two runtimes, you are fine. And we do pass a CRT
pointer around in PQtrace, but that's the only case. We used to have a
problem with some Kerberos structure that was malloced in one place and
free()d in another, but that has been fixed.

//Magnus

pgsql-ports by date:

Previous
From: "Pierre Joye"
Date:
Subject: Re: Libpq visual c++ build errors, addrinfo and sockaddr_storage redefinition error
Next
From: "Joe Maldonado"
Date:
Subject: i5 OS/400 licensed programs...