VS2015編譯Openssl-1.1.0f
阿新 • • 發佈:2018-12-30
一、Openssl簡介
OpenSSL 是一個安全套接字層密碼庫,囊括主要的密碼演算法、常用的金鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程式供測試或其它目的使用。
OpenSSL被曝出現嚴重安全漏洞後,發現多數通過SSL協議加密的網站使用名為OpenSSL的開源軟體包。OpenSSL漏洞不僅影響以https開頭的網站,黑客還可利用此漏洞直接對個人電腦發起“心臟出血”(Heartbleed)攻擊。據分析,Windows上有大量軟體使用了存在漏洞的OpenSSL程式碼庫,可能被黑客攻擊抓取使用者電腦上的記憶體資料。(摘自百度百科)
二、Openssl編譯準備
1)安裝VS2015。 2)下載Openssl-1.1.0f官方原始碼。地址:三、編譯步驟
使用 VS2015 下的 Visual Studio 2015 Command Prompt 進入控制檯模式。1、編譯win32 release版本
1)進入Openssl-1.1.0f目錄。命令:cd /d C:\openssl-1.1.0f 2)配置Openssl-1.1.0f。下面配置命令預設編譯生成release版本 命令:perl Configure VC-WIN32 shared no-asm --prefix="C:/openssl-1.1.0f/win32-release" --openssldir="C:/openssl-1.1.0f/win32-release/ssl" 如果只想編譯出靜態庫libcrypto.lib,libssl.lib,則加入命令引數no-shared 命令:perl Configure VC-WIN32 shared
命令:nmake test 出現如下,則表示測試通過。
5)安裝編譯的Openssl-1.1.0f 命令:nmake install 此時,在C:/openssl-1.1.0f/win32-release目錄下已經可以看到編譯好的Openssl相關檔案了。 6)清除編譯Openssl-1.1.0f時產生的相關檔案,不會清除C:/openssl-1.1.0f/win32-release目錄下編譯好的Openssl 命令:nmake clean 7)以上命令合集:
- cd /d C:\openssl-1.1.0f
- perl Configure VC-WIN32 shared no-asm --prefix="C:/openssl-1.1.0f/win32-release" --openssldir="C:/openssl-1.1.0f/win32-release/ssl"
- nmake
- nmake test
- nmake install
- nmake clean
2、編譯win64 release版本
編譯步驟同上: win64配置引數需要根據自身系統確定:perl Configure { VC-WIN64A | VC-WIN64I }。 命令合集:- cd /d C:\openssl-1.1.0f
- perl Configure VC-WIN64A shared no-asm --prefix="C:/openssl-1.1.0f/win64-release" --openssldir="C:/openssl-1.1.0f/win64-release/ssl"
- nmake
- nmake test
- nmake install
- nmake clean
3、編譯window debug版本
編譯步驟同上: 配置引數加上--debug即可 a) win32 debug版本 命令合集:- cd /d C:\openssl-1.1.0f
- perl Configure VC-WIN32 shared no-asm --debug --prefix="C:/openssl-1.1.0f/win32-debug" --openssldir="C:/openssl-1.1.0f/win32-debug/ssl"
- nmake
- nmake test
- nmake install
- nmake clean
b) win64 debug版本 命令合集:
- cd /d C:\openssl-1.1.0f
- perl Configure VC-WIN64A shared no-asm --debug --prefix="C:/openssl-1.1.0f/win64-debug" --openssldir="C:/openssl-1.1.0f/win64-debug/ssl"
- nmake
- nmake test
- nmake install
- nmake clean
參考文獻:
2. 原始碼C:\openssl-1.1.0f下的INSTALL檔案