Subject: Re: Windows Build

Re: Windows Build

From: Ray Satiro <>
Date: Wed, 2 Sep 2015 02:15:45 -0400

On 9/1/2015 6:32 PM, Matthew Voss wrote:
> 1>C:\Program Files\GnuWin32\include\openssl/crypto.h(399): error C2081:
> 'CRYPTO_EX_DATA' : name in formal parameter list illegal
> Are these macros provided by another library? Do they need to be
> manually defined?

You will need to use a later version of OpenSSL. The version of OpenSSL
that comes with GnuWin32 is 7 years old. I've asked the maintainer to
update it several times and he has never replied. I maintain the
automated downloader script GetGnuWin32 so I give an option to override
with the most recent from 1.0.0 (currently 1.0.0s) which is compatible
with the other built GnuWin32 utilities. See [1]
That is not actually what you want for libssh2, although you should
definitely use the latest 1.0.0 for your GnuWin32 stuff.

If you are building libssh2 with Visual Studio (it looks like it based
on your output) then use the latest OpenSSL 1.0.2 built with Visual
Studio or use WinCNG. For example I just tried with the included project
files and after letting Visual Studio 2010 perform a project file
conversion was able to build the WinCNG libssh2d.dll.. but the tests
fail to build because it's looking for libeay32, probably a mistake.

A year ago a guy posted a project file for Visual Studio 2013 you may
want to try [2], though I haven't tried it so I don't know if it works.


Received on 2015-09-02