[英]Build shared library with static library
假設我有一個源代碼,並且將其編譯為靜態庫 ,所以我有一個.lib文件。 讓我們稱之為first.lib 。
然后,我還有其他源代碼正在從先前的代碼中調用函數。 我將此代碼構建為共享庫 ,並將first.lib用作鏈接器的輸入。 現在,我有一個second.lib,second.dll 。
到目前為止,一切都很好。 但是我想創建一個EXE應用程序,它也使用了second.dll和first.lib。 構建應用程序時,我針對second.dll進行鏈接,並提供first.lib作為鏈接器的輸入。
我的應用程序是否兩次包含first.lib的內容? 就我而言,似乎確實如此。
我的應用程序是否兩次包含first.lib的內容?
答案是“ kinda”。
鏈接靜態庫時,您並未將所有庫包含在DLL或可執行文件中,僅包含您實際使用的部分。
因此,靜態庫的一部分在DLL中,庫的一部分在可執行文件中,並且這兩者中可能都有庫的某些部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.