Bruce Momjian <[EMAIL PROTECTED]> writes:
> Andrew Dunstan wrote:
>> fresh checkout just compiled fine for me on Linux (RH8) with ssl 
>> enabled. Maybe it is your openssl installation?

> It is openssl 0.9.7c.  7.4 CVS compiles fine so I don't see how it can
> be my SSL install.

I've been able to reproduce this on one of my machines, and it's nasty.
It's a conflict between other people's headers.

/usr/local/include/zlib.h (version 1.1.4) quoth:

typedef void   (*free_func)  OF((voidpf opaque, voidpf address));

/usr/local/ssl/include/openssl/crypto.h (0.9.7c) quoth:

int CRYPTO_set_locked_mem_functions(void *(*m)(size_t), void (*free_func)(void *));

So if this version of zlib.h is included before this version of
crypto.h, things break.  Other way 'round works fine.

We can work around this by being more careful about inclusion order
of these headers.  Ultimately it would be nice if the upstream library
authors could avoid the name conflict.  I'm of the opinion that zlib
should not be typedef'ing a name as generic as "free_func", but if
they've made that part of their exported API, it might be hard for them
to change.

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to