User Tools

Site Tools


c:build:build-openssl-statically-on-windows-vs2017

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
c:build:build-openssl-statically-on-windows-vs2017 [2020/06/29 23:20]
odefta
c:build:build-openssl-statically-on-windows-vs2017 [2020/06/30 21:52]
odefta
Line 5: Line 5:
   - Download and install [[https://www.nasm.us/pub/nasm/releasebuilds/2.15.01/win32/nasm-2.15.01-installer-x86.exe|nasm]]   - Download and install [[https://www.nasm.us/pub/nasm/releasebuilds/2.15.01/win32/nasm-2.15.01-installer-x86.exe|nasm]]
   - Add it to the system environment PATH variable   - Add it to the system environment PATH variable
-  - Download [[https://www.openssl.org/source/openssl-1.1.1g.tar.gz|openssl]]+  - Download [[https://www.openssl.org/source/openssl-1.1.1g.tar.gz|openssl]] sources
   - Extract it to a folder - D:\OpenSSL   - Extract it to a folder - D:\OpenSSL
   - Open Visual Studio 2017 native tools x86 (or x64 to build 64 bit library) \\ {{:c:build:pasted:20200629-225156.png}}   - Open Visual Studio 2017 native tools x86 (or x64 to build 64 bit library) \\ {{:c:build:pasted:20200629-225156.png}}
Line 16: Line 16:
 ===== Win 32 static debug build ===== ===== Win 32 static debug build =====
  
-perl Configure debug-VC-WIN32 --prefix=D:\OpenSSL\out --openssldir=D:\OpenSSL\out\SSL +<code> 
 +perl Configure debug-VC-WIN32 no-shared --debug zlib enable-zlib --with-zlib-include=D:/zlib --with-zlib-lib=D:/zlib/zlib.lib --prefix=D:\OpenSSL\out --openssldir=D:\OpenSSL\out\SSL 
 +</code>
 <code> <code>
 Configuring OpenSSL version 1.1.1g (0x1010107fL) for debug-VC-WIN32 Configuring OpenSSL version 1.1.1g (0x1010107fL) for debug-VC-WIN32
Line 43: Line 44:
  
 <code> <code>
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "include\crypto\bn_conf.h.in" > include\crypto\bn_conf.h
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "include\crypto\dso_conf.h.in" > include\crypto\dso_conf.h
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "include\openssl\opensslconf.h.in" > include\openssl\opensslconf.h
 +        "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe" /                   depend && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe" /                   _all
 +
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +        cl  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "." /I "include" -D"L_ENDIAN" -D"OPENSSL_PIC" -D"OPENSSL_CPUID_OBJ" -D"OPENSSL_BN_ASM_PART_WORDS" -D"OPENSSL_IA32_SSE2" -D"OPENSSL_BN_ASM_MONT" -D"OPENSSL_BN_ASM_GF2m" -D"SHA1_ASM" -D"SHA256_ASM" -D"SHA512_ASM" -D"RC4_ASM" -D"MD5_ASM" -D"RMD160_ASM" -D"AESNI_ASM" -D"VPAES_ASM" -D"WHIRLPOOL_ASM" -D"GHASH_ASM" -D"ECP_NISTZ256_ASM" -D"POLY1305_ASM" -D"OPENSSLDIR=\"D:\\OpenSSL\\out\\SSL\"" -D"ENGINESDIR=\"D:\\OpenSSL\\out\\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"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  -c /Foapps\app_rand.obj "apps\app_rand.c"
 +app_rand.c
 +        cl  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "." /I "include" -D"L_ENDIAN" -D"OPENSSL_PIC" -D"OPENSSL_CPUID_OBJ" -D"OPENSSL_BN_ASM_PART_WORDS" -D"OPENSSL_IA32_SSE2" -D"OPENSSL_BN_ASM_MONT" -D"OPENSSL_BN_ASM_GF2m" -D"SHA1_ASM" -D"SHA256_ASM" -D"SHA512_ASM" -D"RC4_ASM" -D"MD5_ASM" -D"RMD160_ASM" -D"AESNI_ASM" -D"VPAES_ASM" -D"WHIRLPOOL_ASM" -D"GHASH_ASM" -D"ECP_NISTZ256_ASM" -D"POLY1305_ASM" -D"OPENSSLDIR=\"D:\\OpenSSL\\out\\SSL\"" -D"ENGINESDIR=\"D:\\OpenSSL\\out\\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"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  /Zs /showIncludes "apps\app_rand.c" 2>&1 > apps\app_rand.d
 +        cl  /Zi /Fdossl_static.pdb /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "." /I "include" -D"L_ENDIAN" -D"OPENSSL_PIC" -D"OPENSSL_CPUID_OBJ" -D"OPENSSL_BN_ASM_PART_WORDS" -D"OPENSSL_IA32_SSE2" -D"OPENSSL_BN_ASM_MONT" -D"OPENSSL_BN_ASM_GF2m" -D"SHA1_ASM" -D"SHA256_ASM" -D"SHA512_ASM" -D"RC4_ASM" -D"MD5_ASM" -D"RMD160_ASM" -D"AESNI_ASM" -D"VPAES_ASM" -D"WHIRLPOOL_ASM" -D"GHASH_ASM" -D"ECP_NISTZ256_ASM" -D"POLY1305_ASM" -D"OPENSSLDIR=\"D:\\OpenSSL\\out\\SSL\"" -D"ENGINESDIR=\"D:\\OpenSSL\\out\\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"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  -c /Foapps\apps.obj "apps\apps.c"
 +apps.c
 +...
 +x509_time_test.c
 +        cl  /Zi /Fdapp.pdb /MDd /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "include" -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  /Zs /showIncludes "test\x509_time_test.c" 2>&1 > test\x509_time_test.d
 +        IF EXIST test\x509_time_test.exe.manifest DEL /F /Q test\x509_time_test.exe.manifest
 +        link /nologo /debug /subsystem:console /opt:ref  /nologo /debug /out:test\x509_time_test.exe @C:\Users\ovidi\AppData\Local\Temp\nmE3EA.tmp
 +        IF EXIST test\x509_time_test.exe.manifest  mt -nologo -manifest test\x509_time_test.exe.manifest -outputresource:test\x509_time_test.exe
 +        cl  /Zi /Fdapp.pdb /MDd /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "include" -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  -c /Fotest\x509aux.obj "test\x509aux.c"
 +x509aux.c
 +        cl  /Zi /Fdapp.pdb /MDd /Gs0 /GF /Gy /MDd /W3 /wd4090 /nologo /Od /I "include" -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"DEBUG" -D"_DEBUG" -D"OPENSSL_USE_APPLINK"  /Zs /showIncludes "test\x509aux.c" 2>&1 > test\x509aux.d
 +        IF EXIST test\x509aux.exe.manifest DEL /F /Q test\x509aux.exe.manifest
 +        link /nologo /debug /subsystem:console /opt:ref  /nologo /debug /out:test\x509aux.exe @C:\Users\ovidi\AppData\Local\Temp\nmE63D.tmp
 +        IF EXIST test\x509aux.exe.manifest  mt -nologo -manifest test\x509aux.exe.manifest -outputresource:test\x509aux.exe
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "apps\CA.pl.in" > "apps\CA.pl"
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "apps\tsget.in" > "apps\tsget.pl"
 +        "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "tools\c_rehash.in" > "tools\c_rehash.pl"
 </code> </code>
  
 +nmake install
 +
 +<code>
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +        "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe" /                   depend && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe" /                   _build_libs
 +
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +
 +Microsoft (R) Program Maintenance Utility Version 14.16.27034.0
 +Copyright (C) Microsoft Corporation.  All rights reserved.
 +
 +*** Installing runtime libraries
 +*** Installing development files
 +Copying: ./include/openssl/aes.h to D:/OpenSSL/out/include/openssl/aes.h
 +Copying: ./include/openssl/asn1.h to D:/OpenSSL/out/include/openssl/asn1.h
 +Copying: ./include/openssl/asn1_mac.h to D:/OpenSSL/out/include/openssl/asn1_mac.h
 +Copying: ./include/openssl/asn1err.h to D:/OpenSSL/out/include/openssl/asn1err.h
 +...
 +D:\OpenSSL\out\html\man7\ossl_store.html
 +D:\OpenSSL\out\html\man7\passphrase-encoding.html
 +D:\OpenSSL\out\html\man7\proxy-certificates.html
 +D:\OpenSSL\out\html\man7\RAND.html
 +D:\OpenSSL\out\html\man7\RAND_DRBG.html
 +D:\OpenSSL\out\html\man7\RSA-PSS.html
 +D:\OpenSSL\out\html\man7\scrypt.html
 +D:\OpenSSL\out\html\man7\SM2.html
 +D:\OpenSSL\out\html\man7\ssl.html
 +D:\OpenSSL\out\html\man7\X25519.html
 +D:\OpenSSL\out\html\man7\X448.html -> D:\OpenSSL\out\html\man7\X25519.html
 +D:\OpenSSL\out\html\man7\x509.html
 +</code>
 +
 +Output library files (D:\OpenSSL\out\lib):
 +
 +{{:c:build:pasted:20200629-235101.png}} \\
 +
 +===== Win 32 static release build =====
 +
 +nmake clean
 +<code>
 +perl Configure VC-WIN32 no-shared zlib enable-zlib --with-zlib-include=D:/zlib --with-zlib-lib=D:/zlib/zlib.lib --prefix=D:\OpenSSL\out --openssldir=D:\OpenSSL\out\SSL
 +</code>
 +nmake \\
 +nmake install
  
    
c/build/build-openssl-statically-on-windows-vs2017.txt · Last modified: 2020/07/01 01:14 by odefta