php環境的openssl是什么意思?
使用VS2005下的Visual Studio 2005 Command Prompt進入控制臺模式(這個模式會自動設置各種環境變量)
、解壓縮openssl的包,進入openssl的目錄
、perl configure VC-WIN32
盡量在這個目錄下執行該命令,否則找不到Configure文件,或者指定完整的Configure文件路徑。
、ms\do_ms
在解壓目錄下執行ms\do_ms命令
、nmake -f ms\ntdll.mak編譯后在openssl解壓目錄下執行,完成編譯后。輸出的文件在out32dll里面,包括應用程序的可執行文件、lib文件和dll文件
注意:在運行第五步時,cl編譯器會抱怨說.\crypto\des\enc_read.c文件的read是The POSIX name for this item is deprecated(不被推薦的),建議使用_read。呵呵,我可不想將OpenSSL中的所有的read函數修改為_read。再看cl的錯誤代碼 error C2220,于是上MSDN上查找:
warning treated as error - no object file generated
/WX tells the compiler to treat all warnings as errors. Since an error occurred, no object or executable file was generated.
是由于設置了/WX選項,將所有的警告都作為錯誤對待,所以。。。
于是打開OpenSSL目錄下的MS目錄下的ntdll.mak文件,將CFLAG的/WX選項去掉,存盤。