Libpq problem on Windows.
I posted a message to pgsql-hackers-win32 regarding a problem with libpq
exports on Win32 the other day, but have yet to receive any replies.
Magnus & I have discussed the problem over IM and we both believe it is
important to fix, but neither of us are fluent enough in make-ese to do
so.
Basically the issue is that the symbols exported by the mingw build of
libpq.dll do not match those exported by the VC++/Borland builds. What
we seem to get is:
- Mingw exports *all* symbols appropiate for the given build.
- VC++/Borland builds appear to export only the published API, but not
the SSL related symbols (even with SSL enabled in the build).
I can probably sort the second problem by adding a second set of .def
files for SSL builds, however it seems to me that the mingw build should
not export all symbols. Whether or nt that is changed, the 2 build types
certainly need to be brought into sync otherwise Windows users may end
up seeing unexplained crashes.
Any comments on what should be done (and whether I should hack the
BCC/VC++ stuff)?
Regards, Dave.
Bruce, while we're pondering on how to solve this, can you put this up
on the open items list so we don't miss it? It's a pretty major issue.
//Magnus
Show quoted text
-----Original Message-----
From: Dave Page [mailto:dpage@vale-housing.co.uk]
Sent: Thursday, September 30, 2004 11:35 PM
To: pgsql-hackers@postgresql.org
Subject: [HACKERS] Libpq problem on Windows.I posted a message to pgsql-hackers-win32 regarding a problem
with libpq exports on Win32 the other day, but have yet to
receive any replies.
Magnus & I have discussed the problem over IM and we both
believe it is important to fix, but neither of us are fluent
enough in make-ese to do so.Basically the issue is that the symbols exported by the mingw
build of libpq.dll do not match those exported by the
VC++/Borland builds. What we seem to get is:- Mingw exports *all* symbols appropiate for the given build.
- VC++/Borland builds appear to export only the published
API, but not the SSL related symbols (even with SSL enabled
in the build).I can probably sort the second problem by adding a second set
of .def files for SSL builds, however it seems to me that the
mingw build should not export all symbols. Whether or nt that
is changed, the 2 build types certainly need to be brought
into sync otherwise Windows users may end up seeing
unexplained crashes.Any comments on what should be done (and whether I should
hack the BCC/VC++ stuff)?Regards, Dave.
---------------------------(end of
broadcast)---------------------------
TIP 8: explain analyze is your friend
Import Notes
Resolved by subject fallback
OK, added:
o fix MinGW libpq to export only required symbols
o fix MSVC build to export SSL symbols
---------------------------------------------------------------------------
Magnus Hagander wrote:
Bruce, while we're pondering on how to solve this, can you put this up
on the open items list so we don't miss it? It's a pretty major issue.//Magnus
-----Original Message-----
From: Dave Page [mailto:dpage@vale-housing.co.uk]
Sent: Thursday, September 30, 2004 11:35 PM
To: pgsql-hackers@postgresql.org
Subject: [HACKERS] Libpq problem on Windows.I posted a message to pgsql-hackers-win32 regarding a problem
with libpq exports on Win32 the other day, but have yet to
receive any replies.
Magnus & I have discussed the problem over IM and we both
believe it is important to fix, but neither of us are fluent
enough in make-ese to do so.Basically the issue is that the symbols exported by the mingw
build of libpq.dll do not match those exported by the
VC++/Borland builds. What we seem to get is:- Mingw exports *all* symbols appropiate for the given build.
- VC++/Borland builds appear to export only the published
API, but not the SSL related symbols (even with SSL enabled
in the build).I can probably sort the second problem by adding a second set
of .def files for SSL builds, however it seems to me that the
mingw build should not export all symbols. Whether or nt that
is changed, the 2 build types certainly need to be brought
into sync otherwise Windows users may end up seeing
unexplained crashes.Any comments on what should be done (and whether I should
hack the BCC/VC++ stuff)?Regards, Dave.
---------------------------(end of
broadcast)---------------------------
TIP 8: explain analyze is your friend---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073