[openssl-users] Help installing OpenSSL 1.1.0 pre6 on Windows 2012 R2

Harster, Kaarl C CIV NAVSEA KPWA, 104 kaarl.harster at navy.mil
Fri Aug 26 18:17:31 UTC 2016

 I've tried many times now to install OpenSSL 1.1.0 pre6 on my Windows 2012 R2 64bit machine.
We are wanting to run 64bit everything.
I have installed 
Microsoft Visual Studio Ultimate 2012 version 11.0.50727.1 RTMREL with Visual C++2012 installed in it.

When I try to use OpenSSL 1.1.0 pre6 for some reason it can't find the nmake commend and it looks to me that the do_win54a and other files are missing in the ms folder.
Sorry but I'm new to ActivePerl. I think the nmake is a perl problem maybe. Is there additional step you have to do after installing Activeperl to get the nmake command to work?
I did find on the ActiveState site the following:
"For 64-bit Perl on 64-bit Windows currently the only supported compiler is the Visual C++ compiler included in the Windows Server 2003 SP1 Platform SDK (aka the April 2005 edition). 
Use the SetEnv.cmd script to set the PATH, LIB, and INCLUDE environment variables to the correct value for building ActivePerl extensions with this command:
"C:\Program Files\Microsoft Platform SDK\SetEnv.Cmd" /XP64 /RETAIL"

I tried installing the SDK on my Windows 2012 R2 64bit machine and of course it will not install can't find files it needs.
Has anyone tried this? 

So I tried going back a version on openSSL
When I try to use the 1.0.2h version of openSSL, the nmake and the other do_ files are in the ms folder and seem to work  but I cannot seem to get past the following error message:
c:\openssl\openssl-1.0.2h>nmake -f ms\nt.mak
Assembling: tmp32\sha1-586.asm
tmp32\sha1-586.asm(1432) : error A2070:invalid instruction operands
tmp32\sha1-586.asm(1576) : error A2070:invalid instruction operands
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
\VC\BIN\ml.EXE"' : return code '0x1'

Or when I try the following I get a different error:

c:\openssl\openssl-1.0.2h>perl configure VC-WIN64A --prefix=C:\_openssl-1.0.2a_x
Configuring for VC-WIN64A
    no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
    no-gmp          [default]  OPENSSL_NO_GMP (skip dir)
    no-jpake        [experimental] OPENSSL_NO_JPAKE (skip dir)
    no-krb5         [krb5-flavor not specified] OPENSSL_NO_KRB5
    no-libunbound   [experimental] OPENSSL_NO_LIBUNBOUND (skip dir)
    no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
    no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
    no-rfc3779      [default]  OPENSSL_NO_RFC3779 (skip dir)
    no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
    no-shared       [default]
    no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
    no-ssl2         [default]  OPENSSL_NO_SSL2 (skip dir)
    no-store        [experimental] OPENSSL_NO_STORE (skip dir)
    no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
    no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS (skip dir)
    no-zlib         [default]
    no-zlib-dynamic [default]
CC            =cl
EX_LIBS       =
CPUID_OBJ     =x86_64cpuid.o
BN_ASM        =bn_asm.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o rsaz_exp.o rs
az-x86_64.o rsaz-avx2.o
EC_ASM        =ecp_nistz256.o ecp_nistz256-x86_64.o
DES_ENC       =des_enc.o fcrypt_b.o
AES_ENC       =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-s
ha1-x86_64.o aesni-sha256-x86_64.o aesni-mb-x86_64.o
BF_ENC        =bf_enc.o
CAST_ENC      =c_enc.o
RC4_ENC       =rc4-x86_64.o rc4-md5-x86_64.o
RC5_ENC       =rc5_enc.o
MD5_OBJ_ASM   =md5-x86_64.o
SHA1_OBJ_ASM  =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o sha1-mb-x86_64.o sh
CMLL_ENC      =cmll-x86_64.o cmll_misc.o
MODES_OBJ     =ghash-x86_64.o aesni-gcm-x86_64.o
RANLIB        =true
ARFLAGS       =
PERL          =perl
DES_INT used
RC4_CHUNK is unsigned long long

Configured for VC-WIN64A.


c:\openssl\openssl-1.0.2h>perl util\mkfiles.pl  1>MINFO

c:\openssl\openssl-1.0.2h>cmd /c "nasm -f win64 -v"  1>NUL 2>&1

c:\openssl\openssl-1.0.2h>if 1 NEQ 0 goto ml64

c:\openssl\openssl-1.0.2h>perl ms\uplink-x86_64.pl masm  1>ms\uptable.asm

c:\openssl\openssl-1.0.2h>ml64 -c -Foms\uptable.obj ms\uptable.asm
Microsoft (R) Macro Assembler (x64) Version 11.00.50727.1
Copyright (C) Microsoft Corporation.  All rights reserved.

 Assembling: ms\uptable.asm

c:\openssl\openssl-1.0.2h>perl util\mk1mf.pl VC-WIN64A  1>ms\nt.mak

c:\openssl\openssl-1.0.2h>perl util\mk1mf.pl dll VC-WIN64A  1>ms\ntdll.mak

c:\openssl\openssl-1.0.2h>perl util\mkdef.pl 32 libeay  1>ms\libeay32.def

c:\openssl\openssl-1.0.2h>perl util\mkdef.pl 32 ssleay  1>ms\ssleay32.def

c:\openssl\openssl-1.0.2h>nmake -f ms\nt.mak

Microsoft (R) Program Maintenance Utility Version 11.00.50727.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Building OpenSSL
        perl .\util\copy-if-different.pl ".\crypto\buildinf.h" "tmp32\buildinf.h
Copying: ./crypto/buildinf.h to tmp32/buildinf.h
        perl .\util\copy-if-different.pl ".\crypto\opensslconf.h" "inc32\openssl
Copying: ./crypto/opensslconf.h to inc32/openssl/opensslconf.h
        lib /nologo /out:out32\libeay32.lib @C:\Users\KAARLH~1.LOC\AppData\Local
tmp32\x86_64cpuid.obj : fatal error LNK1112: module machine type 'x64' conflicts
 with target machine type 'X86'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
\VC\BIN\lib.EXE"' : return code '0x458'

Kaarl Harster

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5615 bytes
Desc: not available
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20160826/b542e6f7/attachment-0001.bin>

More information about the openssl-users mailing list