Visual C++(VC) 利用DLL和lib.exe產生VC專案在編譯時所需的LIB檔
Visual C++(VC) 利用DLL和lib.exe產生VC專案在編譯時所需的LIB檔
資料來源:http://www.cnblogs.com/Dageking/archive/2013/03/14/2959522.html
資料來源:http://blog.xuite.net/tzupingkao20110309/wretch/135615749
基本觀念:
在使用 VC 連結 dll 時,通常需要一個導入庫檔(.lib),但有時我們只有一個 dll 檔,怎麼辦呢?
通常,在程式庫檔時,需要一個 (.lib)檔,lib 檔分為兩種:
01.靜態程式庫(Static Libary,以下簡稱“靜態程式庫”)
02.動態連接庫(DLL,以下簡稱“動態庫”)的導入庫(Import Libary,以下簡稱“導入庫”)。VC 在連結 dll 時,需要根據導入庫(.lib)來定位 dll 中的符號位置。沒有這個檔,VC 連結器將不能正常連結。
01.產生DEF:
pexports CB_BaseLib.dll > libCB_BaseLib.def
pexports是從https://sourceforge.net/projects/mingw/files/MinGW/Extension/pexports/下載的
02.產生Lib:
lib /def:libCB_BaseLib.def /machine:ix86 /out:CB_BaseLib.lib