當一個解決方案中設置了工程A依賴于工程B;
工程B為 lib 靜態庫;工程A需要鏈接工程B的庫;
此時,在該解決方案中編譯,工程A和B都不會有問題;
但是,如果遷移工程A到其他位置,僅附帶工程B的頭文件和lib文件;并且在工程A中設置了相應的庫目錄和頭文件目錄;
但是,編譯時,工程A會固執的在當前工程的輸出路徑中去找工程B的lib文件,導致找不到而報錯,例如:
1>LINK : fatal error LNK1104: 無法打開文件“E:\DGSource\DG_Game\Project2009\trunk\DreamStudio\Projects\Debug\DreamStudioGuidD.lib”
經檢查,發現在解決方案中設置的項目依賴項不是保存在解決方案中的,而是保存在項目文件中的,例如:
<ItemGroup>
<ProjectReference Include="..\DreamStudioGuid\DreamStudioGuid.vcxproj">
<Project>{4a2c5657-e601-43ec-8ce5-991c7aec7d10}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>