2015-06-24 98 views
0

我在VS13中有一個項目,我需要它包含幾個使用CMake和VS編譯的庫。我有一對調試和釋放模式的二進制文件。它們都有相同的名稱,可以說example.lib和example.dll都適用於調試版本和發佈版本。如何在visual studio 13中指定需要包含哪些dll

雖然我可以單獨指定需要將哪個example.lib文件包含到項目中,通過將文件重命名爲example_d.lib example_r.lib文件來更改發佈和調試模式下的* .lib文件,它仍然會在任何情況下搜索example.dll文件。所以每次我從一個版本更改爲一個調試時,我需要將example.dll從一個換成另一個,然後再返回。

我的問題是如何指定包含某些dll和lib文件的目錄,或者如何指定某個dll文件名以將其包含到項目中? 謝謝。

回答

0

的問題是,你命名.lib文件,但不改變.lib.dll名。

正確的解決方案是在構建DLL時更改項目設置,以在名稱中包含$(Configuration)

0

你可以嘗試手動編輯vcxproj文件,並添加如下的內容:

<ItemGroup Condition="'$(Configuration)' == 'Debug'"> 
    <Reference Include="MyLib"> 
     <HintPath>..\..\Debug\MyLib.dll</HintPath> 
    </Reference> 
    </ItemGroup> 

    <ItemGroup Condition="'$(Configuration)' == 'Release'"> 
    <Reference Include="MyLib"> 
     <HintPath>..\..\Release\MyLib.dll</HintPath> 
    </Reference> 
    </ItemGroup> 
相關問題