在windows下 编译caffe代码。 官方推荐是vs2013 而我手头只有VS2017 。准备开始下载代码开始编译。
1 代码下载
windows版本的代码有两份,一份是官方的编译的windows代码,但是需要自己添加CUDN opencv等库 地址 https://github.com/BVLC/caffe/tree/windows/src/caffe
注意选择 windows 版本
一份是微软编译的windows代码,使用nuget管理第三方库的依赖,出于图简单的想法我选择了后者。
地址 https://github.com/microsoft/caffe
2 配置
下载代码后,进行配置。由于是学习,所以暂时没有考虑配置显卡.
进入caffe-masterwindows 文件夹下,粘贴复制CommonSettings.props.example文件,文件名修改为CommonSettings.props
修改CommonSettings.props里的配置 只配置only cpu 其他关闭(按图配置)
3 配置完成 保存,开启sln进行编译.很漫长的过程 因为vs会下载需要的第三方库 比如 boost opencv protobuf glog gflag等等
如图
这里需要注意的是 opencv我在编译的时候出现了问题 我将其从2.4.10升级为2.4.11 不知道是否是必需操作
然后首先编译libcaffe工程生成lib,中途会保存boost某hpp文件格式有问题,点击该错误,打开hpp文件保存即可解决。
再次编译然后成功编译出libcaffe.lib。
但是进行caffe.exe编译的时候 会报错找不到某boost的lib 而且不是需要120版本而是140版本
这个问题无法解决。考虑到vs2017是140版本 所以估计还是得使用VS2013.
以下是使用vs2013编译成功过程
重复步骤1 2 3 但是发现VS2013的nuget基本是连不上状态,只能手动下载国内朋友已经做好的nuget包。
下载解压放到与caffe-master并列文件夹即可:链接:https://pan.baidu.com/s/1vir1vNxHYbM_SGkLjiWrEg 密码:1id9
放入../../NugetPackages文件夹下
无需下载第三方库后 VS2013就没有vs2017de那些配置问题了 直接编译成功
参考博文
https://blog.csdn.net/qq_14845119/article/details/77822597#reply
https://blog.csdn.net/AkashaicRecorder/article/details/71016942
https://www.cnblogs.com/yixuan-xu/p/5858595.html
https://blog.csdn.net/zb1165048017/article/details/51355143 <----- nuget包地址由该博主提供