[英]How to build OpenSSL on Windows with Visual Studio 2017?
[英]Build OpenSSL in Visual Studio 2013
如何在Visual Studio 2013中構建OpenSSL? 我嘗試在本課中進行編譯,但是出現錯誤: Assembling: tmp32\\x86_64cpuid.asm tmp32\\x86_64cpuid.asm(1) : error A2088:END directive required at end of file NMAKE : fatal error U1077: "C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\
我在x64下編譯,可能是什么問題呢?
我在此處 (Unix和Windows)寫了一個構建OpenSSL的說明。
確保您使用原始的OpenSSL源(不要重復使用已編譯的源代碼)。
打開Visual Studio x64 Win64命令提示符(2010)(在“開始”菜單中)
%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat"" amd64
perl Configure VC-WIN64A --prefix=C:\openssl_x64 no-asm no-shared enable-tlsext enable-static-engine
ms\do_win64a
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak install
我記得在將OpenSSL 1.0.2d構建為靜態庫時也遇到了相同的錯誤。 適用於我的解決方案如下:
在新的命令行窗口中,構建OpenSSL並將其安裝到C:\\ build \\ bin \\ openssl-1.0.2d-x64目錄:
cd C:\build\src\openssl-1.0.2d-x64
set PATH=%PATH%;C:\nasm
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64
perl Configure VC-WIN64A --prefix=C:\build\bin\openssl-1.0.2d-x64 enable-static-engine
ms\do_win64a
nmake /f ms\nt.mak
nmake /f ms\nt.mak test
nmake /f ms\nt.mak install
生成的版本位於C:\\ build \\ bin \\ openssl-1.0.2d-x64目錄中。
希望有幫助!
將此答案更新為Visual Studio 2015
1-確保使用1.0.2h openssl源。
2-確保安裝(舊)nasm(不是最新版本):使用2.11版[1]: http : //www.nasm.us/pub/nasm/releasebuilds/2.11/(從2013年開始)並將其放在您的路徑上。
3-打開任何普通的命令提示符(cmd)-首選管理員-並在下載源的根目錄中執行這些命令。
%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat"" amd64
perl Configure VC-WIN64A --prefix=C:\openssl_x64 no-asm no-shared enable-tlsext enable-static-engine
ms\do_win64a
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak install
Visual Studio 2017更新:
1)我使用了1.0.2h openssl
源代碼。 我沒有嘗試過其他版本。
2)在您的PATH
安裝了perl。
3)安裝NASM並將其添加到您的PATH
(例如,添加到C:\\ NASM和/或編輯下面的PATH
設置)。 最新版本( 2.13.1
)對我來說效果很好。
4)檢查並根據需要編輯下面使用的vcvarsall.bat
的路徑。
5)(可選)在下面的命令中編輯安裝文件夾(通過--prefix
設置)。
6)在下載源的根目錄中打開命令提示符,(編輯並)執行以下命令:
set PATH=%PATH%;C:\nasm
%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat"" amd64
perl Configure VC-WIN64A --prefix=C:\openssl_x64 no-asm no-shared enable-tlsext enable-static-engine
ms\do_win64a
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak install
7)(可選)如果您安裝了多個版本的VS,則可能要驗證是否已執行了正確的nmake
版本( 14.10.*
而不是例如14.0*
或12.*
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.