C:\Users\HJiahu\.caffe\dependencies\download\libraries_v140_x64_py35_1.1.0.tar.bz2
)编译完caffe后将install文件夹下的include文件夹复制出来与caffe源码(位于根目录中src目录下)一块儿放在同一个文件夹caffe_src下(这样作是为了方便。只有编译后的include文件夹下才有caffe.pb.h文件)。caffe_src
的结构以下:git
- caffe_src - include - caffe - layers - proto - caffe.pb.h - util ... - src - caffe - layers - solvers - util ...
I:\learn_caffe\learn_caffe\caffe_src\include
,这个就是上面提到的从install文件夹中复制出来的include目录C:\***\.caffe\dependencies\libraries_v140_x64_py35_1.1.0\libraries\include
,这个和下面的内容源于编译caffe时自动下载的依赖包。C:\***\.caffe\dependencies\libraries_v140_x64_py35_1.1.0\libraries\include\boost-1_61
在预处理定义中添加以下内容github
CPU_ONLY _SCL_SECURE_NO_WARNINGS _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_DEPRECATE USE_LMDB USE_OPENCV
C:\***\.caffe\dependencies\libraries_v140_x64_py35_1.1.0\libraries\lib
全部依赖库文件以下所示(其实我并不知道哪些是必须的因此就把能加的都加上去了):windows
caffeproto-d.lib opencv_world320d.lib boost_chrono-vc140-mt-gd-1_61.lib boost_date_time-vc140-mt-gd-1_61.lib boost_filesystem-vc140-mt-gd-1_61.lib boost_system-vc140-mt-gd-1_61.lib boost_thread-vc140-mt-gd-1_61.lib boost_timer-vc140-mt-gd-1_61.lib libopenblas.dll.a caffehdf5_D.lib caffehdf5_cpp_D.lib caffehdf5_hl_D.lib caffehdf5_hl_cpp_D.lib caffezlibd.lib caffezlibstaticd.lib gflagsd.lib glogd.lib leveldbd.lib libboost_chrono-vc140-mt-gd-1_61.lib libboost_system-vc140-mt-gd-1_61.lib libboost_timer-vc140-mt-gd-1_61.lib libcaffehdf5_D.lib libcaffehdf5_cpp_D.lib libcaffehdf5_hl_D.lib libcaffehdf5_hl_cpp_D.lib libprotobufd.lib libprotocd.lib lmdbd.lib snappy_staticd.lib snappyd.lib ntdll.lib
boost_thread-vc140-mt-gd-1_61.lib
,在同一个文件夹中建立一个副本并从新命名为libboost_thread-vc140-mt-gd-1_61.lib
就好了。添加一个main函数后就能够一步一步调试caffe代码了(我直接从源代码tools文件夹中把caffe.cpp复制出来做为调试入口文件)。app
编译caffe,可参考官方文档函数
包含目录为ui
G:\caffe_rel\build\libraries\include\boost-1_61 G:\caffe_rel\build\libraries\include G:\caffe_rel\build\install\include
库目录为调试
G:\caffe_rel\build\lib G:\caffe_rel\build\libraries\lib C:\CNNs\opencv_with_world\x64\vc12\lib
添加两个预处理宏code
USE_OPENCV CPU_ONLY
附加库为接口
opencv_world310.lib gflags.lib glog.lib libprotobuf.lib libprotoc.lib caffe.lib proto.lib
与上同,修改boost_thread-vc120-mt-1_61.lib等文件的名称ci
先使用官网提供的方法编译caffe
下面的库须要加入到vs2013中
opencv_world320d.lib caffe-d.lib caffeproto-d.lib libprotobufd.lib libopenblas.dll.a gflagsd.lib glogd.lib cublas.lib cuda.lib cudnn.lib cudart.lib curand.lib caffehdf5_D.lib caffehdf5_hl_D.lib caffezlibd.lib libboost_thread-vc140-mt-gd-1_61.lib (若是是vs2013的话这里是120,具体boost库的名称要按照编译器的提示添加)