q:從動態鏈結庫dll檔案匯出lib檔案
詳情:
常見的還有libcurl庫含有.a檔案,沒有lib檔案。
解決:
使用virsual studio自帶工具dumpbin.exe和lib.exe進行處理即可得到lib檔案。步驟如下:
1,首先檢查dump.exe所在目錄是否在計算機的【環境變數/path】裡面。
dumpbin.exe的目錄在virsual studio目錄\vc\bin,如 c:\program files (x86)\microsoft visual studio 14.0\vc\bin
如果沒有,則新增到path中,因為lib.exe也是在這個目錄下。
2,開啟cmd,切換目錄到 dll檔案所在的目錄
3,使用dumpbin匯出符號定義檔案def檔案:
命令格式:dumpbin /exports dll檔名.dll > 輸出符號定義檔案.def
比如:dumpbin /exports sqlite3.dll >sqlite3.x64.def
4,使用文字編輯器,編輯def檔案
個人使用的sublime text,使用列選擇模式ctrl+alt+方向鍵。
5,使用lib.exe匯出lib檔案
命令格式:64位lib /def:符號定義檔案.def /machine:x64 /out:輸出lib檔案.lib
命令格式:32位lib /def:符號定義檔案.def /machine:x86 /out:輸出lib檔案.lib
比如:lib /def:sqlite3.x64.def /machine:x64 /out:sqlite3.lib
6,匯出完成,結果如下:
因為前面已經說,sqlite-dll-******.zip包已經自帶了sqlite3.def這個符號檔案了,所以我們可以省略步驟3和步驟4,直接來到步驟5。
從dll檔案匯出對應的lib檔案
基本內容 visual c 開發工具提供了兩個命令列工具,乙個是dumpbin.exe,另乙個是lib.exe。利用這兩個工具即可從dll匯出其對應的lib。1 在命令列執行 dumpbin exports yourdll.dll yourdll.def 2 編輯 yourdll.def 檔案,使之...
如何從dll檔案匯出對應的lib檔案
visual c 開發工具提供了兩個命令列工具,乙個是dumpbin.exe,另乙個是lib.exe。利用這兩個工具即可從dll匯出其對應的lib。1 在命令列執行 dumpbin exports yourdll.dll yourdll.def exports fn1 fn2 3 在命令列執行 li...
如何從dll檔案匯出對應的lib檔案
近期由於不再使用vs生成lib,考慮使用windows下gcc生成乙個動態庫,供第三方呼叫,發現編譯之後只有dll,lib如何處理?好吧,這就是本文的目的。visual c 開發工具提供了兩個命令列工具,乙個是dumpbin.exe,另乙個是lib.exe。利用這兩個工具即可從dll匯出其對應的li...