vs2013vs更改屬性表永久解決opencv的庫加載問題


1. 打開如下目錄:C:\Users\username(Administrator)\AppData\Local\Microsoft\MSBuild\v4.0  (其中uername是你管理員用戶的名稱),在其中新建兩個配置文件,名字可以自己取,文件屬性為.props,這兩個配置文件分別為debug和release的配置文件,下面介紹這兩個文件的配置區別。

打開這兩個文件,分別添加如下內容

debug.props文件:

<?xml version="1.0" encoding="utf-8"?> 
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <IncludePath>D:\opencv\opencv\build\include\opencv2;D:\opencv\opencv\build\include\opencv;D:\opencv\opencv\build\include;$(IncludePath)</IncludePath><!--這里面的三個路徑分別是build內opencv2,opencv和include的路徑,根據自己的情況更改 -->
  </PropertyGroup>
  <PropertyGroup>
    <LibraryPath>D:\opencv\opencv\build\x64\vc12\lib;$(LibraryPath)</LibraryPath><!--這是添加安裝的vc的lib,需要說明的是build文件夾下有x86和x64,每個文件夾下有不同的vc版本,選擇的時候根據自己的vs版本和需要使用的編譯器版本,vc10對應vs2010,vc11對應vs2012,vs12對應2013 -->
  </PropertyGroup>
<ItemDefinitionGroup>
    <Link>
      <AdditionalDependencies>opencv_calib3d2413d.lib;opencv_contrib2413d.lib;opencv_core2413d.lib;opencv_features2d2413d.lib;opencv_flann2413d.lib;opencv_gpu2413d.lib;opencv_highgui2413d.lib;
      opencv_imgproc2413d.lib;opencv_legacy2413d.lib;opencv_ml2413d.lib;opencv_nonfree2413d.lib;opencv_objdetect2413d.lib;opencv_ocl2413d.lib;opencv_photo2413d.lib;opencv_stitching2413d.lib;opencv_superres2413d.lib;opencv_ts2413d.lib;opencv_video2413d.lib;opencv_videostab2413d.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link><!--這里面添加的庫對應着上文添加的vc的lib文件夾里面的文件,根據安裝的版本進行修改,需要注意的是只能添加文件結尾帶d的,代表的是debug庫,添加錯誤可能導致后續文件的編譯錯誤 -->
  </ItemDefinitionGroup>
</Project>

 release.props文件

<?xml version="1.0" encoding="utf-8"?> 
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <IncludePath>D:\opencv\opencv\build\include\opencv2;D:\opencv\opencv\build\include\opencv;D:\opencv\opencv\build\include;$(IncludePath)</IncludePath>
  </PropertyGroup>
  <PropertyGroup>
    <LibraryPath>D:\opencv\opencv\build\x64\vc12\lib;$(LibraryPath)</LibraryPath>
  </PropertyGroup>
<ItemDefinitionGroup>
    <Link>
      <AdditionalDependencies>opencv_calib3d2413.lib;opencv_contrib2413.lib;opencv_core2413.lib;opencv_features2d2413.lib;opencv_flann2413.lib;opencv_gpu2413.lib;opencv_highgui2413.lib;opencv_imgproc2413.lib;opencv_legacy2413.lib;opencv_ml2413.lib;opencv_nonfree2413.lib;opencv_objdetect2413.lib;opencv_ocl2413.lib;opencv_photo2413.lib;opencv_stitching2413.lib;opencv_superres2413.lib;opencv_ts2413.lib;opencv_video2413.lib;opencv_videostab2413.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link><!--這里面添加的是vc的lib文件夾的不帶d的庫文件,代表的是release庫文件 -->
  </ItemDefinitionGroup>
</Project>

 2. 保存好兩個文件后,打開vs2013,新建項目,打開屬性管理器,默認是win32的編譯器,在64位機上運行opencv項目時會出錯,無法編譯。需要更換為64位編譯器,在配置管理器內進行更改

更改完成后刪除win32。

3. 選擇debug屬性右鍵,添加現有屬性表,將上文建的debug.props文件添加進去,然后刪除Microsoft.Cpp.x64.user.props文件即可。 對release也執行相同操作,

 此時即可進行opencv項目開發了。

在每次新建項目時,都需執行步驟3

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM