Win32: The binary pgsql package depends on MSVCR71.dll which we must not depend upon

Christian Stimming stimming at tuhh.de
Sat Oct 3 16:08:19 EDT 2009


Hi Martin,

Am Samstag, 3. Oktober 2009 17:53 schrieb Martin Preuss:
> > By including the suitable openssl DLLs (libeay32.dll,
> > libssl32.dll, ssleay32.dll) in your pgsql binary, you're silently
> > overwriting those openssl DLLs which we compile ourselves during the
> > win32 build, and on which the aqbanking library depends upon.
>
> BTW: AqBanking doesn't link against OpenSSL and even doesn't use it at all
> (we had to switch to GCrypt due to Debian's unwillingness to ship AqBanking
> when linked against OpenSSL).
>
> However, the library Gwenhywfar contains a console tool ("gct-tool") which
> links against OpenSSL. But this tool is only needed to create and manage
> keyfiles.

D-oh! Indeed, Martin, you are completely right. In fact, the libaqbanking and 
libgwenhywfar which we build and use for the win32 gnucash binary do neither 
use nor depend upon any openssl DLL anymore.

So my original problem statement was wrong: No, aqbanking doesn't use any 
openssl DLLs anymore, so even though we compiled and shipped them, we haven't 
been using them at all. This also explains why there didn't occur any extra 
error messages from aqbanking since the introduction of the pgsql package.

I'll disable the inclusion of the openssl DLLs for now, because they are not 
need by anything. If they are helpful when building our own pgsql module, we 
can very well use these again.

> Anyway, introducing another MSVC version will most likely lead to other
> problems due to clashing of symbols... One can't predict from which MSVC
> dll symbols are taken if there are multiple MSVC*.dll...

That's right - I hope the MSVC*.dll better refuse to be loaded into the same 
process space. In this particular case the problem "only" is to ship one 
single suitable MSVCR71.dll, so by including this particular runtime, today's 
problem is probably solved. But as you say, other problems will then be 
waiting down the road...

Thanks a lot for pointing this out!

Christian


More information about the gnucash-devel mailing list