錯誤我最近升級到2012,從2005年(我敢肯定),建設我的解決方案時遇到了鏈接錯誤。經過幾個小時的搜索谷歌和周圍發現,我跑出了想法。我已經建立了幾十個項目,所以我非常肯定我做得很對,但公平地說,這已經過去了幾年。的Visual Studio 2012的鏈接與靜態庫
所以,作爲一個測試,我成立了一個新的項目。我稱之爲App,一個Windows應用程序(.exe)。我創建了另一個名爲Core的項目,並將其標記爲靜態庫(.lib),並將其標記爲Configuration Type。兩者都是解決方案的一部分。在Core中,我添加了Test.cpp和Test.h,其中包含一個具有簡單功能的小類。然後,在Window的應用程序WinMain.cpp文件中,我有WinMain(),我通過CTest測試調用此測試類;測試結果();
隨着這個我已經設置了項目應用的項目依賴是核心,最終加入到應用程序的附加包含目錄的路徑,核心代碼,其中Test.cpp的/的.h現場。
我得到以下鏈接錯誤,不能爲我的生命找出原因。有誰知道我可能錯過了哪些步驟,或者從以前的版本在2012年發生了哪些變化?非常感謝您的幫助!
1>------ Build started: Project: App, Configuration: Debug Win32 ------
1>WinMain.obj : error LNK2019: unresolved external symbol "public: __thiscall CTest::CTest(void)" ([email protected]@[email protected]) referenced in function [email protected]
1>WinMain.obj : error LNK2019: unresolved external symbol "public: __thiscall CTest::~CTest(void)" ([email protected]@[email protected]) referenced in function [email protected]
1>WinMain.obj : error LNK2019: unresolved external symbol "public: int __thiscall CTest::Result(void)" ([email protected]@@QAEHXZ) referenced in function [email protected]
1>D:\Work\Test_Linker_Stupidity\App\Debug\App.exe : fatal error LNK1120: 3 unresolved externals
========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ========
謝謝彼得!昨晚我在FB上碰到了一些朋友,他們指着我走向同一個方向。令人驚訝的是,我沒有找到任何引用相同解決方案的其他文章,所以希望這篇文章能夠在未來對其他人有所幫助。 我也嘗試添加庫的輸入,這當然有效,但遠遠不夠理想。我實際上已經忘記了我試過這個解決方案,簡單地說。 再次感謝您的幫助! –
作爲快速參考,這是我指出的鏈接: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/d69aeb0d-e5fb-41e1-98ad-9b6c7b43a3ca/# c8b80c9a-2e8d-4a06-9d0f-a63ee15a208e –
非常有用,謝謝彼得。 – Ken