基本环境
- Windows 10
- Visual Studio 2013
- python 2.7
- CUDA 7.5
- cuDNN v4
安装过程
参考官方Caffe-windows 配置与示例运行或者基于Windows10 x64+visual Studio2013+Python2.7.12环境下的Caffe配置学习进行安装
出现问题
1 libcaffe和test_all无法导入
原因是Visual Studio 2013的安装路径中缺少CUDA 7.5.props,CUDA 7.5.argets等,我的是这个路径
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations(即默认路径)
,CUDA 7.5.props就在cuda的安装目录下,路径是
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions,
我将整个文件家里的内容拷贝到
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations
就行,再reload,那么libcaffe和testall就都没问题了!
2 build libcaffe 时爆出的错误
a.The “Nvda.Build.CudaTasks.SanitizePaths” task could not be loaded from the assembly …
大概是需要安装 .NET Framework 3.5,网上的资源都带有百度全家桶,然后官网下的又打不开,最后我还是老老实实的打开控制面板-->程序->启动或关闭windows功能
b. ....boost.1.59.0.0\lib\native\include\boost/format/alt_sstream_impl.hpp : error C2220: 警告被视为错误 - 没有生成“object”文件 (....\src\caffe\util\math_functions.cpp)
找到对应的math_functions.cpp文件右击打开方式选择Visual Studio,OK
c.Cannot open source file: '....\src\caffe\data_reader.cpp': No such file or directory
在项目include和src中删除data_reader的索引即可。
d.错误 1 error MSB3073: 命令“"E:\caffe-microsoft\caffe-master\windows\scripts\BinplaceCudaDependencies.cmd" "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin" "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5" false true "E:\caffe-microsoft\caffe-master\windows..\Build\x64\Release":VCEnd”已退出,代码为 1。
cuDNN下载下来时的“cuda”目录下的内容忘记复制到\CUDA\v7.5之下了,另外,手欠在CommonSettings.props中的<CuDnnPath></CuDnnPath>标签中间加了路径(并不需要啊~~~~)
3.测试时爆出的错误
a.ImportError: No module named skimage.io
哀伤,好不容易编译,然后用python测试又出问题,没有一个叫做scikit-image,那就装一下吧,囧
b.ImportError: No module named google.protobuf.internal
简单的说,就是安装google.protobuf,但是没想到安装过程这么麻烦。下载protobuf-3.0.zip和protoc-3.0-win32.zip,然后把protoc-2.5.0-win32.zip里的protoc.exe放到protobuf-2.5.0\src\下。
切换到protobuf-2.5.0\python
执行指令 python setup.py build, python setup.py test, python setup.py install,再测试一下,终于成功