windows系統下openssl的編譯

2021-06-20 21:45:15 字數 1356 閱讀 1852

遇到各種錯誤,實在考驗人的耐性,把整個詳細過程寫下來,也讓其他人好少走彎路。。

1:首先需要perl,安裝好perl並將bin新增到系統變數path中

2:接著是c編譯器,我電腦中安裝了vc 2010,因此就不需要再安裝,只需在使用的時候設定相應的環境變數

步驟如下

2:開啟cmd命令列,進入c:\openssl,執行命令 perl configure vc-win32

3:進入vc安裝路徑的bin檔案中,我的是c:\program files\microsoft visual studio 10.0\vc\bin,執行vcvars32,該指令碼檔案設定了環境變數,但是只在當前dos介面中有效,一旦關閉就無效(這個問題就讓我糾結了好久,這一步也涉及了很多關於vc環境的問題,如果想自己在系統變數中修改path進行新增也可以,但是我就遇到各種各樣的錯,所以還是按上面這個做法吧)

4:返回c:\openssl中,此時可以有三種做法

1) ms\do_nasm

2) ms\do_masm

3) ms\do_ms

所以我使用ms\do_ms,但這個過程又遇到錯誤

搜了一下,發現有兩篇比較靠譜的文章

a) 提到安裝vs 2010 sp1會移除64-bit compliers

b) 說是因為採用incremental linking(增量式鏈結)導致的

解決方法有兩個

a) project(專案)->properties(屬性)->linker(聯結器)->gerneral(常規)->enable incremental linking(啟動增量鏈結),把 yes (/incremental) 改為 no (/incremental:no) 即可。

b) 安裝vs 2010 sp1

我選擇的是安裝vs 2010 sp1,雖然花的時間比較長,但是因為這個專案不是在ide環境下編譯的,所以我也不知道去哪修改那個屬性,就放棄了第一種

最後一步安裝openssl:

nmake -f ms\ntdll.mak install
之後就編譯成功動態庫,輸在在out32dll資料夾中,包括可執行檔案,dll檔案以及lib檔案等

有關各種平台的安裝說明文件其實也挺詳細的,可以參考一下,比如在windows x86系統下的說明檔案是"install.w32",直接拖到瀏覽器中即可開啟

Windows系統下恢復Ubuntu系統開機引導項

在重灌或修復windows系統後,開機啟動介面中的ubuntu系統引導項不見了,直接進入windows系統。下文將具體介紹如何恢復ubuntu系統開機引導項。1.準備一張ubuntu系統安裝盤 2.將ubuntu系統安裝盤插入光碟機,重啟計算機,進入bios,將開機啟動設定為光碟機 cd rom 啟...

windows系統下安裝nginx

mainline version 主線版本 stable version 穩定版本 legacy versions 歷史版本。一般生產用穩定版本,本文使用主線版本。2 啟動 注意不要直接雙擊nginx.exe,這樣會導致修改配置後重啟 停止nginx無效,需要手動關閉任務管理器內的所有nginx程序...

Windows系統下配置Leela Zero

眾所周知,l eela zero是比利時程式設計師gian carlo pascutto gcp 參照deepmind最新 在github上面開展的的一款開源圍棋專案,專案為分布式,依靠志願者提供算力。不借助任何人類知識,完全從零開始,致力於復現alphagozero 1 眾多棋友都很好奇,究竟如何...