[openssl-users] How to compile 1.1.1 under Windows
Chris Clark
a.chris.clark at gmail.com
Tue Oct 23 06:50:46 UTC 2018
I am attempting to upgrade a project using OpenSSL 1.0.0h to version
1.1.1 under Visual Studio 2008-SP1, but when I try to compile version
1.1.1 for VC-WIN64A I get the following compile error:
cl /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MD /W3 /wd4090 /nologo
/O2 /I "." /I "crypto\include" /I "include" -D"L_ENDIAN"
-D"OPENSSL_PIC" -D"OPENSSL_CPUID_OBJ" -D"OPENSSL_IA32_SSE2"
-D"OPENSSL_BN_ASM_MONT" -D"OPENSSL_BN_ASM_MONT5"
-D"OPENSSL_BN_ASM_GF2m" -D"SHA1_ASM" -D"SHA256_ASM" -D"SHA512_ASM"
-D"KECCAK1600_ASM" -D"RC4_ASM" -D"MD5_ASM" -D"AES_ASM" -D"VPAES_ASM"
-D"BSAES_ASM" -D"GHASH_ASM" -D"ECP_NISTZ256_ASM" -D"X25519_ASM"
-D"PADLOCK_ASM" -D"POLY1305_ASM" -D"OPENSSLDIR=\"C:\\Program
Files\\Common Files\\SSL\""
-D"ENGINESDIR=\"C:\\openssl\\lib\\engines-1_1\"" -D"OPENSSL_SYS_WIN32"
-D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE"
-D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS"
-D"OPENSSL_USE_APPLINK" -D"NDEBUG" /Zs /showIncludes
"crypto\sm2\sm2_sign.c" 2>&1 > crypto\sm2\sm2_sign.d
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
Studio 9.0\VC\BIN\amd64\nmake.exe"' : return code '0x2'
Stop.
My Command lines from the VS 2008 x64 Command Prompt are:
perl Configure VC-WIN64A --prefix=c:/openssl
nmake
I also tried compiling the latest stable snapshot
(openssl-1.1.1-stable-SNAP-20181022) with the same results. However
version 1.1.0h compiles without error. Can anyone tell me what the
problem is?
Here is the configuration dump:
Command line (with current working directory = .):
c:\perl\bin\perl.exe Configure VC-WIN64A --prefix=c:/openssl
Perl information:
c:\perl\bin\perl.exe
5.24.3 for MSWin32-x64-multi-thread
Enabled features:
aria
asm
async
autoalginit
autoerrinit
autoload-config
bf
blake2
camellia
capieng
cast
chacha
cmac
cms
comp
ct
deprecated
des
dgram
dh
dsa
dso
dtls
dynamic-engine
ec
ec2m
ecdh
ecdsa
engine
err
filenames
gost
hw(-.+)?
idea
makedepend
md4
mdc2
multiblock
nextprotoneg
ocb
ocsp
pic
poly1305
posix-io
psk
rc2
rc4
rdrand
rfc3779
rmd160
scrypt
seed
shared
siphash
sm2
sm3
sm4
sock
srp
srtp
sse2
ssl
static-engine
stdio
tests
threads
tls
ts
ui-console
whirlpool
tls1
tls1-method
tls1_1
tls1_1-method
tls1_2
tls1_2-method
tls1_3
dtls1
dtls1-method
dtls1_2
dtls1_2-method
Disabled features:
afalgeng [not-linux]
asan [default] OPENSSL_NO_ASAN
crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG
crypto-mdebug-backtrace [default] OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
devcryptoeng [default] OPENSSL_NO_DEVCRYPTOENG
ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128
egd [default] OPENSSL_NO_EGD
external-tests [default] OPENSSL_NO_EXTERNAL_TESTS
fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER
fuzz-afl [default] OPENSSL_NO_FUZZ_AFL
heartbeats [default] OPENSSL_NO_HEARTBEATS
md2 [default] OPENSSL_NO_MD2 (skip crypto\md2)
msan [default] OPENSSL_NO_MSAN
rc5 [default] OPENSSL_NO_RC5 (skip crypto\rc5)
sctp [default] OPENSSL_NO_SCTP
ssl-trace [default] OPENSSL_NO_SSL_TRACE
ubsan [default] OPENSSL_NO_UBSAN
unit-test [default] OPENSSL_NO_UNIT_TEST
weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS
zlib [default]
zlib-dynamic [default]
ssl3 [default] OPENSSL_NO_SSL3
ssl3-method [default] OPENSSL_NO_SSL3_METHOD
Config target attributes:
AR => "lib",
ARFLAGS => "/nologo",
AS => "nasm",
ASFLAGS => "-g",
CC => "cl",
CFLAGS => "/W3 /wd4090 /nologo /O2",
CPP => "\$(CC) /EP /C",
HASHBANGPERL => "/usr/bin/env perl",
LD => "link",
LDFLAGS => "/nologo /debug",
MT => "mt",
MTFLAGS => "-nologo",
RANLIB => "CODE(0x65aff0)",
RC => "rc",
aes_asm_src => "aes-x86_64.s vpaes-x86_64.s bsaes-x86_64.s
aesni-x86_64.s aesni-sha1-x86_64.s aesni-sha256-x86_64.s
aesni-mb-x86_64.s",
aes_obj => "aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o
aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o
aesni-mb-x86_64.o",
apps_aux_src => "win32_init.c",
apps_init_src => "../ms/applink.c",
apps_obj => "win32_init.o",
aroutflag => "/out:",
asflags => "-Ox -f win64 -DNEAR",
asoutflag => "-o ",
bf_asm_src => "bf_enc.c",
bf_obj => "bf_enc.o",
bin_cflags => "/Zi /Fdapp.pdb",
bin_lflags => "/subsystem:console /opt:ref",
bn_asm_src => "bn_asm.c x86_64-mont.s x86_64-mont5.s x86_64-gf2m.s
rsaz_exp.c rsaz-x86_64.s rsaz-avx2.s",
bn_obj => "bn_asm.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o
rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o",
bn_ops => "EXPORT_VAR_AS_FN SIXTY_FOUR_BIT",
build_file => "makefile",
build_scheme => [ "unified", "windows", "VC-common" ],
cast_asm_src => "c_enc.c",
cast_obj => "c_enc.o",
cflags => "/Gs0 /GF /Gy /MD",
chacha_asm_src => "chacha-x86_64.s",
chacha_obj => "chacha-x86_64.o",
cmll_asm_src => "cmll-x86_64.s cmll_misc.c",
cmll_obj => "cmll-x86_64.o cmll_misc.o",
coutflag => "/Fo",
cppflags => "",
cpuid_asm_src => "x86_64cpuid.s",
cpuid_obj => "x86_64cpuid.o",
defines => [ "OPENSSL_SYS_WIN32", "WIN32_LEAN_AND_MEAN",
"UNICODE", "_UNICODE", "_CRT_SECURE_NO_DEPRECATE",
"_WINSOCK_DEPRECATED_NO_WARNINGS", "OPENSSL_USE_APPLINK" ],
des_asm_src => "des_enc.c fcrypt_b.c",
des_obj => "des_enc.o fcrypt_b.o",
disable => [ ],
dso_cflags => "/Zi /Fddso.pdb",
dso_extension => "",
dso_scheme => "win32",
ec_asm_src => "ecp_nistz256.c ecp_nistz256-x86_64.s x25519-x86_64.s",
ec_obj => "ecp_nistz256.o ecp_nistz256-x86_64.o x25519-x86_64.o",
enable => [ ],
ex_libs => "ws2_32.lib gdi32.lib advapi32.lib crypt32.lib user32.lib",
exe_extension => "",
includes => [ ],
keccak1600_asm_src => "keccak1600-x86_64.s",
keccak1600_obj => "keccak1600-x86_64.o",
ldoutflag => "/out:",
lflags => "",
lib_cflags => "/Zi /Fdossl_static.pdb",
lib_cppflags => "",
lib_defines => [ "L_ENDIAN" ],
md5_asm_src => "md5-x86_64.s",
md5_obj => "md5-x86_64.o",
modes_asm_src => "ghash-x86_64.s aesni-gcm-x86_64.s",
modes_obj => "ghash-x86_64.o aesni-gcm-x86_64.o",
module_cflags => "",
module_cxxflags => "",
module_ldflags => "/dll",
mtinflag => "-manifest ",
mtoutflag => "-outputresource:",
multilib => "-x64",
padlock_asm_src => "e_padlock-x86_64.s",
padlock_obj => "e_padlock-x86_64.o",
perlasm_scheme => "auto",
poly1305_asm_src => "poly1305-x86_64.s",
poly1305_obj => "poly1305-x86_64.o",
rc4_asm_src => "rc4-x86_64.s rc4-md5-x86_64.s",
rc4_obj => "rc4-x86_64.o rc4-md5-x86_64.o",
rc5_asm_src => "rc5_enc.c",
rc5_obj => "rc5_enc.o",
rcoutflag => "/fo",
rmd160_asm_src => "",
rmd160_obj => "",
sha1_asm_src => "sha1-x86_64.s sha256-x86_64.s sha512-x86_64.s
sha1-mb-x86_64.s sha256-mb-x86_64.s",
sha1_obj => "sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o
sha1-mb-x86_64.o sha256-mb-x86_64.o",
shared_cflag => "",
shared_defines => [ ],
shared_extension => "",
shared_extension_simple => "",
shared_ldflag => "/dll",
shared_rcflag => "",
shared_target => "win-shared",
sys_id => "WIN64A",
thread_defines => [ ],
thread_scheme => "winthreads",
unistd => "<unistd.h>",
uplink_aux_src => "../ms/uplink.c uplink-x86_64.s",
uplink_obj => "../ms/uplink.o uplink-x86_64.o",
wp_asm_src => "wp-x86_64.s",
wp_obj => "wp-x86_64.o",
Recorded environment:
AR =
ARFLAGS =
AS =
ASFLAGS =
BUILDFILE =
CC =
CFLAGS =
CPP =
CPPDEFINES =
CPPFLAGS =
CPPINCLUDES =
CROSS_COMPILE =
CXX =
CXXFLAGS =
HASHBANGPERL =
LD =
LDFLAGS =
LDLIBS =
MT =
MTFLAGS =
OPENSSL_LOCAL_CONFIG_DIR =
PERL =
RANLIB =
RC =
RCFLAGS =
RM =
WINDRES =
__CNF_CFLAGS =
__CNF_CPPDEFINES =
__CNF_CPPFLAGS =
__CNF_CPPINCLUDES =
__CNF_CXXFLAGS =
__CNF_LDFLAGS =
__CNF_LDLIBS =
Makevars:
AR = lib
ARFLAGS = /nologo
AS = nasm
ASFLAGS = -g
CC = cl
CFLAGS = /W3 /wd4090 /nologo /O2
CPP = $(CC) /EP /C
CPPDEFINES =
CPPFLAGS =
CPPINCLUDES =
CXXFLAGS =
HASHBANGPERL = /usr/bin/env perl
LD = link
LDFLAGS = /nologo /debug
LDLIBS =
MT = mt
MTFLAGS = -nologo
PERL = c:\perl\bin\perl.exe
RC = rc
NOTE: These variables only represent the configuration view. The build file
template may have processed these variables further, please have a look at the
build file for more exact data:
makefile
build file:
makefile
build file templates:
Configurations\common0.tmpl
Configurations\windows-makefile.tmpl
Configurations\common.tmpl
More information about the openssl-users
mailing list