管理程式庫
LIB 的預設模式是建置或修改 COFF 物件的程式庫。 當您未指定 /EXTRACT
[將物件複製到檔案] 或 /DEF
[建置匯入程式庫] 時,LIB 會在此模式中執行。
若要從物件和/或程式庫建置程式庫,請使用下列語法:
LIB
[options...
]files...
此命令會從一或多個輸入檔案建立程式庫。 files
files
可以是 COFF 物件檔、32 位 OMF 物件檔或現有的 COFF 程式庫。 LIB 會建立一個程式庫,其中包含指定檔案中的所有物件。 如果輸入檔案是 32 位 OMF 物件檔,LIB 會在建置程式庫之前將其轉換成 COFF。 LIB 無法接受 16 位版本 LIB 所建立程式庫中的 32 位 OMF 物件。 您必須先使用 16 位 LIB 來擷取物件;然後,您可以使用擷取的物件檔案作為 32 位 LIB 的輸入。
根據預設,LIB 會使用第一個物件或程式庫檔案的基底名稱以及副檔名 .lib
來命名輸出檔案。 輸出檔案會放入目前目錄中。 如果檔案已經存在同名,則輸出檔案會取代現有的檔案。 若要保留現有的程式庫,請使用 /OUT
選項來指定輸出檔的名稱。
下列選項適用于建置和修改程式庫:
/LIBPATH:
dir
覆寫環境程式庫路徑,並將它設定為 dir
。 如需詳細資訊,請參閱 LINK /LIBPATH
選項的描述。
/LIST
顯示輸出程式庫至標準輸出的相關資訊。 輸出可以重新導向至檔案。 您可以使用 /LIST
來判斷現有程式庫的內容,而不需修改它。
/NAME:
filename
建置匯入程式庫時, filename
指定要建置匯入程式庫的 DLL 名稱。
/NODEFAULTLIB
從解析外部參考時所搜尋的程式庫清單中移除一或多個預設程式庫。 如需詳細資訊,請參閱/NODEFAULTLIB
。
/OUT:
filename
覆寫預設輸出檔名,並將它取代為 filename
。 根據預設,輸出程式庫會建立在目前目錄中,並在命令列上使用第一個程式庫或物件檔的基底名稱,以及副檔名 .lib
。
/REMOVE:
object
省略輸出程式庫中指定的 object
。 LIB 會結合所有物件來建立輸出程式庫(無論是在物件檔或程式庫中),然後刪除以 /REMOVE
指定的任何物件。
/SUBSYSTEM:
{CONSOLE
| EFI_APPLICATION
| EFI_BOOT_SERVICE_DRIVER
| EFI_ROM
| EFI_RUNTIME_DRIVER
| NATIVE
| POSIX
| WINDOWS
| WINDOWSCE
}[,#[.##]]
告知作業系統如何執行透過連結至輸出程式庫所建立的程式。 如需詳細資訊,請參閱 LINK /SUBSYSTEM
選項的描述。
命令列上指定的 LIB 選項不區分大小寫。
您可以使用 LIB 來執行下列程式庫管理工作:
若要將物件新增至程式庫,請指定現有程式庫的檔案名,以及新物件的檔案名。
若要合併程式庫,請指定程式庫檔案名。 您可以新增 物件,並將程式庫與單一 LIB 命令結合。
若要以新的 物件取代程式庫成員,請指定要取代之成員物件的程式庫,以及新物件的檔案名(或包含該物件的程式庫)。 當同名的物件存在於多個輸入檔中時,LIB 會將 LIB 命令中指定的最後一個物件放入輸出程式庫中。 當您取代程式庫成員時,請務必在包含舊物件的程式庫之後指定新的物件或程式庫。
若要從程式庫刪除成員,請使用 /REMOVE 選項。 不論命令列順序為何,LIB 都會在合併所有輸入物件之後處理 /REMOVE 的任何規格。
注意
您無法同時刪除成員,並將它解壓縮至相同步驟中的檔案。 您必須先使用 /EXTRACT
來擷取成員物件,然後使用 再次執行 /REMOVE
LIB。 此行為與其他 Microsoft 產品中提供的 16 位 LIB(適用于 OMF 程式庫)不同。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應