openssl源碼在windows下編譯及openssl的windows安裝檔案

來源:互聯網
上載者:User

今天在windows下安裝OpenSSL將過程和遇到的問題及解決方案簡記之。
前提:安裝了vc++6.0(配置時用到其中工具)
資源:
  openssl-0.9.8e
  ActivePerl-5.8.8.822-MSWin32-x86-280952
過程:
一、準備:下載並安裝perl,解壓openssl-0.9.8e
二、運行“cmd”,cd改變目錄到openssl-0.9.8e源碼所在目錄
三、執行" perl Configure VC-WIN32 --prefix=c:/openssl-0.9.8e" 目的是指定OpenSSL編譯好後的安裝路徑。
四、運行“ms\do_ms”
五、運行“nmake -f ms\ntdll.mak”
  1、此時出現“nmake不是內部或者外部命令或者.bat檔案” 的情況
  解決方案:nmake.exe的檔案,這個檔案應該位於C:\Program Files\Microsoft Visual Studio\VC98\Bin目錄中,配置環境變數即可。操作:按右鍵我的電腦-->屬性-->進階-->環境變數--系統變數(找到path)-->編輯,將C:\Program Files\Microsoft Visual Studio\VC98\Bin加到未尾(注意要和前一個路徑用";"隔開,並以";"結束;最後要提醒一點,一定要重啟機器,新的path才會生效;
  2、 此時以為問題解決,重新執行命令“nmake -f ms\ntdll.mak”發現彈出警告框,標題為cl.exe提示缺少mspdb60.dll。
  解決缺少mspdb60.dll問題將目錄\Common\MSDev98\Bin下的mspdb60.dll檔案,複製到C:\Program Files\Microsoft Visual Studio\VC98\BIN下,VC6.0即可正常運行。
  3、此時以為問題解決,重新運行“nmake -f ms\ntdll.mak”命令,發現出現問題,
  “ms\uplink.c(11) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory NMAKE : fatal error U1077: 'cl' : return code '0x2' Stop.錯誤的時候”
    解決:先運行vcvars32命令,vcvars32.bat用於設定VC命令列編譯的環境變數。
    重新運行“nmake -f ms\ntdll.mak”命令,大功告成。執行通過
  4、檢查下是否成功,執行命令:“nmake -f ms\ntdll.mak test”。
六、運行“nmake -f ms\ntdll.mak install”安裝編譯後的OpenSSL到指定目錄。
七、查看安裝結果C:\openssl-0.9.8.e下包含了三個檔案夾Bin、include、lib。bin下包括openssl.exe(openssl指令程式)、ssleay32.dll(ssl協議動態庫)、libeay32.dll(密碼演算法庫)。lib下包括libeay32.lib,ssleay32.lib。Include目錄包括了OpenSSL開發設計的標頭檔。
  至此,OpenSSL在windows下編譯完成了。

  

  開發環境配置

  在建立的項目中,功能表列,“工具--選項--目錄”設定include和lib指定到C:\openssl-0.9.8.e下包含的檔案夾include和lib。
  做一個簡單的測試程式並設定串連如
  

 

 

  以上資料摘自:windows下安裝OpenSSL及開發環境的配置簡記(原創)


  補充:
  1、在第3步的命令一定要注意大小寫;
  2、在第5.3步的時候可能會提示不同的檔案未找到,這時可以多嘗試幾次"vcvars32"命令。開始的時候,編譯到第5.3步時提示EC_PRIVATEKEY_it重定義,原因是第3步命令輸入不對,要區分大小寫
  3、上述的IDE是vc6.0,也可以用vs2008,其他IDE沒有測試,不過記得第5步中環境變數的設定。如果是VC6.0以外的IDE編譯的話出現“return code '...' Stop”錯誤,請再次執行"vcvars32"命令。
  4、 如果不太習慣在windows下使用linux下的這種編譯方式(其實windows底層也是這個樣子,只是微軟的IDE屏蔽了),那麼可以去下載openssl的windows安裝檔案,請自行搜尋“Win32OpenSSL”關鍵字。
  5、有了現成的加解密,就不用自己去實現了,而且現在ssl使用這麼廣泛,應該不會有漏洞吧?接下來整理怎麼使用openssl。 

 

【參考資料 感謝作者】
1、windows下安裝OpenSSL及開發環境的配置簡記(原創)
2、編譯openssl的錯誤,“ECPKPARAMETERS_it” : 重定義

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.