Visual C++(VC) 利用DLL和lib.exe產生VC專案在編譯時所需的LIB檔

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

 

 

 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *