Building 1.1.1a on Windows - how to "make update"?

Lynch, Andrew andrew.lynch at
Fri May 24 15:38:34 UTC 2019

Ok, understood.  I have now managed to build an executable with our patches and it is currently chugging through the tests (which seem to run much slower native than they did inside a Linux VM on the same host...)

There was one more hiccup with a failure ("does not have a number assigned").  Initially I had not copied util/libcrypto.num across because of a comment at the top of  "Intermediary files are created, call libcrypto.num and libssl.num."  That did not seem to happen in the way I expected.

For reference, these are the files I copied from the updated Linux tree to Windows:

It turns out the applied patches did not include any new objects.  obj_dat.h had only been touched by make update to bump the copyright year from 2018 to 2019.


-----Original Message-----
From: openssl-users [mailto:openssl-users-bounces at] On Behalf Of Richard Levitte
Sent: Friday, May 24, 2019 4:18 PM
To: openssl-users at
Subject: Re: Building 1.1.1a on Windows - how to "make update"?

The diverse things that 'make update' generates is supposed to be the same across platforms, so the intention is that they get generated on one platform (Linux / Unix) and that these changes get distributed to all others.


On Fri, 24 May 2019 14:38:14 +0200,
Lynch, Andrew wrote:
> Hi,
> I have been working with OpenSSL 1.1.1a on Linux.  We have a number of 
> patches that are applied, including a specific version of cmpossl.  To 
> ensure that all new error codes, objects etc. are available I run 
> "make update" after config.  I.e. the build process is
> Unpack original distribution openssl-1.1.1a.tar.gz Apply list of 
> patches ./config make update && make && make test
> Some colleagues have asked me for a Windows executable, so I have now installed ActivePerl 5.26.3 and Visual Studio 2019 on my Windows 7 desktop.
> The unmodified openssl-1.1.1a builds and runs just fine using Configure VC-WIN64A-masm.  But with our patches applied the build fails once it gets to crypto/cmp because the include files cmperr.h and crmferr.h do not exist.  On Linux these are created by make update.  The Windows Makefile does not have a target "update" (or "errors" for that matter).
> So what is the equivalent of make update or make errors on Windows?
> I am wondering if I can simply copy the updated files from Linux (new _err.h, modified obj_dat.h and probably a few more) but I would prefer an official way to (re)generate them on Windows.
> Regards,
> Andrew.
Richard Levitte         levitte at
OpenSSL Project

More information about the openssl-users mailing list