OpenSSL 3.0 版本已經發布VS2019編譯源碼教程


 

1 OpenSSL 3.0版本在2020年五月發布

 

OpenSSL3.0 在2020年5月發布了第一個版本,隨即在六月份又發布了一些alpha版本,版本修正了一些bug,增加了一些協議支持,繼續支持國密sm2 ,sm3 ,sm4(從1.1.1版本開始支持)。

 

3.0版本完全兼容1.1.1版本接口,但低級別的MD2, MD4, MD5, MDC2,SHA1, SHA224, SHA256, SHA384, SHA512,AES,DES,ECDH,DSA,ECDSA,RSA接口都會被警告將要被棄用。但文檔中沒有提及要用什么接口替換,估計是全部用EVP接口替換,我在項目中基本都替換為了EVP接口。

 

2 OpenSSL 3.0版本使用VS2019編譯過程

 

2.1 OpenSSL3.0 源碼下載

 

源碼可以到官方網站或者直接使用git進行下載

 

下載地址 ffmpeg.vip

 

或者使用git下載版本庫上最新源碼

 

git clone git://git.openssl.org/openssl.git

 

2.2 依賴工具安裝

 

安裝 perl 腳本解釋器

 

下載 http://openssl.vip/download

 

安裝 nasm 匯編器

 

 

默認會安裝到用戶目錄

 

C:\Users\用戶名\AppData\Local\bin\NASM

 

配置windows的環境變量,將此路徑加入到環境變量path中

 

安裝好后,重新打開控制台能夠運行nasm 和perl命令

 

2.3 編譯工具:VS2019社區版本

 

下載地址 http://openssl.vip/download 安裝社區版本,安裝后注冊個用戶就可以免費使用。

 

2.4 編譯步驟

 

1)進入控制台(運行 CMD),或者編寫批處理bat文件

 

或者直接運行菜單中的vs2019 命令行編譯工具,選擇相應的版本(x86x64

 

2)運行vs編譯環境

 

打開菜單中VS2019中有對應的命令行工具,把地址復制過來

 

編譯32位庫版本

 

"c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"

 

編譯64位庫版本

 

"c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"

 

3)進入openssl源碼嗎目錄

 

cd openssl-3.0.0-alpha2

 

4)使用perl生成makefile文件

 

perl Configure { VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE } --prefix=%OUTPATH%

 

perl Configure VC-WIN32

 

VC-WIN32 表示生成32位程序 --prefix 是編譯后輸出的路徑,默認會生成到C:\Program Files (x86)目錄,因為要寫到C盤,有可能會出錯,如果控制台不是管理員方式運行

 

5)用nmake編譯

 

#編譯庫源碼

 

nmake

 

#編譯測試程序

 

nmake test

 

# 安裝openssl

 

nmake install

 

將編譯好的文件安裝到指定目錄,默認是C:\Program Files (x86)\OpenSSL,如果是在C盤,運行控制台是需要有管理員權限

 

2.5 編譯中的一些錯誤

 

'perl' 不是內部或外部命令,也不是可運行的程序

 

需要安裝perl

 

NMAKE : fatal error U1064: 未找到 MAKEFILE 並且未指定目標

 

perl 生成makefile失敗,可以清理掉重新生成,或者替換參數重新生成

 

NASM not found - make sure it's installed and available on %PATH%

 

安裝nasm或者配置取消nasm

 

It looks like you don't have either nmake.exe or dmake.exe on your PATH, so you will not be able to execute the commands from a Makefile. You can install dmake.exe with the Perl Package Manager by running:

 

需要安裝下載安裝dmake

 

ppm install dmake

 

運行時錯誤:OPENSSL_Uplink(0FB024F8,08): no OPENSSL_Applink

 

復制applink.c文件到頭文件路徑#include <openssl/applink.c>

 

 

 

要觀看全部內容請點擊c++實戰區塊鏈核心密碼學-基於openssl
https://ke.qq.com/course/2737429?tuin=10eec75


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM