2011-07-26 107 views
1

我有一個關於在VS 2010 Pro中構建靜態庫的新手問題。構建靜態庫(.lib)VS 2010 Pro

當您選擇構建靜態庫(.lib)而不是應用程序時,項目屬性中的鏈接器選項將消失。通常我會轉到Linker-> Input-> Additional Dependencies來爲項目添加所需的.lib文件。

我已經構建了庫並將其添加到我的主應用程序項目下的鏈接器 - >輸入 - >其他依賴項。現在,當我開始構建我的主應用程序(包含在項目.lib文件中的上述靜態庫)時,我收到了有關庫中使用的方法的鏈接器錯誤。

構建靜態庫時,我在哪裏添加所需的.lib文件?

回答

1

靜態庫與您的可執行文件鏈接。您的靜態庫具有的任何依賴關係(它需要的外部庫)必須在您的可執行文件中指定

因此,如果libA要求libB,那麼與libA鏈接的應用程序也必須鏈接到libB

+0

該死。這很煩人。謝謝。 – jay

0

最簡單的方法是將依賴.lib添加到您的主應用程序的鏈接器頁面中。

0

如果庫中總是依賴於庫B,那麼你可以強制在源文件中的一個發生在庫A.例如:

#pragma comment(lib, "wininet.lib")