這里記錄編譯OpenSSL-0.9.8的過程:
1.首先需要下載activeperl來運行一些安裝腳本??梢詮倪@里下載:
http://www.activestate.com/ActivePerl.
2.安裝一個匯編編譯工具,作者選擇nasm;這個可以很容易從網絡上下載。下載好之后解壓縮并在系統環境中設置好目錄。注意,需要nasmw.exe這個文件(你可以將nasm.exe改名就可以)。
3.到開始菜單下找到VS2008的程序,并到‘Visual Studio tools’下找到VS2008 command Prompt;這樣做的目的是配置好VS2008編譯器的環境。這樣就可以找到nmake和cl兩個可執行程序了。注意要在perl安裝好了再打開,否則perl路徑無效。
4.到openssl的目錄下(作者的目錄是D:\openssl\openssl-0.9.8。
5.執行perl Configure VC-WIN32;實際上這是一個perl腳本,位于當期目錄;有興趣的可以進去看看。其目的是自動安裝好一些編譯文件,比如nt.mak.
6.執行ms\do_nasm(我安裝的是nasm)。
7.好了,現在可以執行nmake了。輸入nmake -f nt.mak(生成靜態庫), nmake -f ntdll.mak(生成動態庫)。
我這里編譯出現幾個錯誤,和nt.mak的編譯選項有關系,原來是這樣的:
CFLAG= /MD /W3 /WX /G5 /Ox /O2 /Ob2 /Gs0
刪除G5和WX選項,這樣編譯才能通過。
CFLAG= /MD /W3 /Ox /O2 /Ob2 /Gs0 /GF
一般是這個錯誤。
.\ssl\s2_srvr.c(165) : error C2220: warning treated as error - no 'object' file generated
編譯完成以后你可以在out32這個目錄下找到最后的輸出;而過程的臨時文件都在tmp32下面。