[kmymoney] [Bug 439776] Aqbanking/Kbanking broken in mingw builds

Ralf Habacker bugzilla_noreply at kde.org
Tue Sep 28 12:32:34 BST 2021


https://bugs.kde.org/show_bug.cgi?id=439776

--- Comment #8 from Ralf Habacker <ralf.habacker at freenet.de> ---
(In reply to AndreJ from comment #7)
> (In reply to Ralf Habacker from comment #6)
> > Looking into a fresh installed binary snapshot package shows me that
> > libgnutls-30.dll and the required libraries libhogweed-6.dll and
> > libnettle-8.dll are present in `bin` subdirectory (see appended file list)
> 
> Yes, they are present, but libgnutls-30.dll throws the error, and the
> previuos version of the file requires previous versions of the other two
> dlls.
> 
> Using the 32bit build does not help at all.
> 
> I did now a clean installation on Windows 8.1, and KMyMoney works as
> expected 
Thanks for investigation.

> (apart from the missing icons).

That is an open issue. 

>  So it seems to be a Windows 7 issue. 

Comparing both dll's showes that the newer libgnutls-30.dll depends on some
symbols from the ncrypt.dll system library

        DLL Name: ncrypt.dll
        vma:  Hint/Ord Member-Name Bound-To
        1ea260      3  BCryptCloseAlgorithmProvider
        1ea280     29  BCryptGenRandom
        1ea292     39  BCryptOpenAlgorithmProvider
        1ea2b0     65  NCryptDecrypt
        1ea2c0     66  NCryptDeleteKey
        1ea2d2     76  NCryptFreeObject
        1ea2e6     77  NCryptGetProperty
        1ea2fa     84  NCryptOpenKey
        1ea30a     86  NCryptOpenStorageProvider
        1ea326     94  NCryptSignHash

At least BCryptCloseAlgorithmProvider was added with Windows Vista
(https://docs.microsoft.com/en-us/windows/win32/api/bcrypt/nf-bcrypt-bcryptclosealgorithmprovider)
and explains why kmymoney could not be loaded on Windows 7.

I will add a note on the snapshot download page referring to the minimum
operating system requirements. Maybe there is a solution, but I can not say at
this time if it would work with the latest gnutls sources. 

Considering that there is no maintenance for Windows 7 anymore and you can do
online banking with KMyMoney, it might not be such a good idea to use this OS
version for it.

> The Dependency Walker notes other missing files on Windows 8.1, but
> this seems not to bother kmymoney.

That seems to be normal on Windows :-/

> Strangely, aqbanking works inside the current gnucash 4 build with the same
> libgnutls-30.dll, while the Gnucash folks claim their version 4.x does not
> work with Windows 7 anymore.

That may depend on the way how the libgnutls dll was build. I remember that
there is was an option in the source to use a ncrypt/bcrypt emulation layer to
support older os. Maybe they used that.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the KMyMoney-devel mailing list