Suggestions for gpgme on mingw-w64

Andre Heinecke aheinecke at
Thu Aug 18 17:29:26 CEST 2016


Sorry to pull out such an old thread but I just ran into the same problem
as I was trying to use GpgME statically linked into GpgOL.

After wasting some time figuring out why every call returned
"Unsupported Protocol" I figured out that this here was also my problem.

On Wednesday 28 October 2015 16:37:14 Werner Koch wrote:
> I just pushed
>   bb600aa w32: Add new global flag "w32-inst-dir".

Works great! Useful :-)
Although I wondered a bit if we shouldn't try the same fallbacks that 
we use to find gpgconf to find gpgme-w32spawn.exe, too.
This would also solve this problem I guess.

>   bb2d11c w32: Add extra diagnostic about possible missing
>           gpgme-w32spawn.exe
> I have not tested any of these changes, I would appreciate if you could
> give it a try.  Please let me know if you need a tarball.

The extra diagnostic was a bit useless for me. First I had to start Outlook
in an environment with GpgME debugging and then
as spawnhelper was NULL it would print:

GPGME 2016-08-18 15:55:41 <0x13b0>    gpgme-dinfo: gpgconf='C:\Gpg4win\..\GnuPG\bin\gpgconf.exe'
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_pipe: enter: filedes=02A5E3AC, inherit_idx=1 (GPGME uses it for reading)
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_pipe: leave: read=0x0 (000025B0/0x0), write=0x1 (00002B3C/0x0)
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: enter: path=0B34B048, path=C:\Gpg4win\..\GnuPG\bin\gpgconf.exe
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: check: path=0B34B048, argv[ 0] = C:\Gpg4win\..\GnuPG\bin\gpgconf.exe
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: check: path=0B34B048, argv[ 1] = --list-dirs
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: check: path=0B34B048, tmp_name = C:\Users\AHEINE~1\AppData\Local\Temp\gpgme-zPTgnT
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: check: path=0B34B048, CreateProcess failed: ec=87
GPGME 2016-08-18 15:55:41 <0x13b0>      _gpgme_io_spawn: check: path=0B34B048, (is '(null)' correctly installed?)

No mention of gpgme-w32spawn.exe and all paths looked completely
correct for my system. Very little difference in the output to the working
case :-/

So instead I've now (9cf983b0) added a big fat MessageBox in that case:

because I also don't find it intuitive that a library needs a binary to work
and usually if I package a library I just package the library and omit
any binaries that this library installs.

Andre Heinecke |  ++49-541-335083-262  |
Intevation GmbH, Neuer Graben 17, 49074 Osnabrück | AG Osnabrück, HR B 18998
Geschäftsführer: Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 630 bytes
Desc: This is a digitally signed message part.
URL: </pipermail/attachments/20160818/e592fe8c/attachment.sig>

More information about the Gnupg-devel mailing list