windows下编译caffe报错:error MSB4062: 未能从程序集 E:NugetPackagesOpenCV.2.4.10......的解决办法

参考博客:http://blog.csdn.net/u013277656/article/details/75040459

在windows上编译caffe时,用vs打开后会自动加载还原NugetPackages文件夹,里面是caffe需要依赖的各种库。 
费了很长时间还原完成编译时,出现错误:error MSB4062: 未能从程序集 
E:NugetPackagesOpenCV.2.4.10uild ativeprivatecoapp.NuGetNativeMSBuildTasks.dll 加载任务“NuGetPackageOverlay”。未能加载文件或程序集“file:///E:NugetPackagesOpenCV.2.4.10uild ativeprivatecoapp.NuGetNativeMSBuildTasks.dll”或它的某一个依赖项。系统找不到指定的文件。 
请确认 声明正确,该程序集及其所有依赖项都可用,并且该任务包含实现 Microsoft.Build.Framework.ITask 的公共类。。。。。。。。。。。 
这让人很是崩溃,明明是自动下载的,怎么还会有错误呢? 
没办法,想使用,办法还是要找的,几经搜索之下,亲测可用的方法,供遇到相同错误的人参考一下。 
解决办法如下: 
第一步:项目->管理NuGet程序包->更新,此时可以看到opencv后面有更新的按钮,点击更新为opencv2.4.11。 
更新完成后,关闭项目重新打开,不要着急编译,此时编译仍会报错:错误 1 error : This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is ……NugetPackagesOpenCV.2.4.10uild ativeOpenCV.props. E:softwarecaffe-ssd-microsoftwindowslibcaffelibcaffe.vcxproj 
第二步::选择解决方案的每一个项目,右键单击,卸载项目 
这里写图片描述 
卸载之后,编辑vcxproj文件, 
这里写图片描述 
将文件里面所有的OpenCV.2.4.10都换成OpenCV.2.4.11,重新加载项目,再进行编译即可。(每一个项目都要如此)。

二、补充办法

1.修改NugetPackagesOpenCV.2.4.11uild ative文件夹里面opencv的配置文件OpenCV.props,用编辑器打开以后搜索private

删除private 前面的;

2.关闭vs2013, 用管理员身份重新启动vs;

原文地址:https://www.cnblogs.com/yamin/p/8596748.html