Article From:https://www.cnblogs.com/brianchina/p/9064542.html

1. Preparatory work:

1.Download and install the VS 2010 development environment.

    Address: http://www.downza.cn/soft/185464.html

2.Download the ActivePerl tool, which is a Perl script interpreter. (we need to execute the Perl script in the compilation process, so we must install this tool).

 Address: http://downloads.activestate.com/ActivePerl/
3.Download the OpenSSL source code, OpenSSL is a secure socket layer password library, mainly including cryptographic algorithms, common key and certificate encapsulation management functions and the implementation of the SSL protocol, and provide a variety of test programs for use.
 Address: http://www.openssl.org/source/

4. Install ActivePerl-5.26.1.2601-MSWin32-x64-404865 tools.
5. Unzip the openssl-1.0.2o.tar to the C: root directory.

Two. Compile the work:

1. windows -> Microsoft Visual Studio 2010 -> Visual Studio Command prompt (2010)

2.In the VS command prompt window, use the CD command to enter the root directory of OpenSSL (after decompression).

3.Input the following arbitrary commands in the VS command prompt window (the command must be executed in order, one line and one line) to output the corresponding static library or dynamic library.

Be careful:If you need to compile several different libraries, you need to delete all the files from the last compilation output before compiling them, otherwise you will make mistakes.
/****************** 32-bit lib **************/
//Compiling a 32 bit release lib Library
perl Configure VC-WIN32 no-asm
ms\do_ms
nmake -f ms\nt.mak

//Compiling a 32 bit debug lib Library
perl Configure debug-VC-WIN32 no-asm
ms\do_ms
nmake -f ms\nt.mak

/****************** 32-bit dll **************/
//Compiling a 32 bit debug lib Library
perl Configure debug-VC-WIN32 no-asm
ms\do_ms
nmake -f ms\ntdll.mak

//Compiling a 32 bit debug lib Library
perl Configure debug-VC-WIN32 no-asm
ms\do_ms
nmake -f ms\ntdll.mak

Leave a Reply

Your email address will not be published. Required fields are marked *