源码下载
首先下载caffe2的源码:https://github.com/caffe2/caffe2
网上都建议使用git命令下载,因为caffe2依赖了很多第三方模块,git会根据依赖自动下载第三方依赖模块。但是我在下载过程中发现很多第三方模块的地址变了,因此git方式无法完成第三方模块的下载。因此,下载好caffe2源码后,需要手动完成这些模块的下载。这些模块的默认地址在caffe2/.gitmodules文件内。
Windows下编译安装
编译工程
在windows下可以编译成VS的工程文件,我用的是VS2017,修改caffe2/scripts/build_windows.bat文件内容如下:
:: ############################################################################# :: Example command to build on Windows. :: ############################################################################# :: This script shows how one can build a Caffe2 binary for windows. @echo off setlocal SET ORIGINAL_DIR=%cd% SET CAFFE2_ROOT=%~dp0%.. if NOT DEFINED CMAKE_BUILD_TYPE ( set CMAKE_BUILD_TYPE=Release ) if NOT DEFINED USE_CUDA ( set USE_CUDA=OFF ) if NOT DEFINED CMAKE_GENERATOR ( if DEFINED APPVEYOR_BUILD_WORKER_IMAGE ( if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2017" ( set CMAKE_GENERATOR="Visual Studio 15 2017 Win64" ) else if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2015" ( set CMAKE_GENERATOR="Visual Studio 14 2015 Win64" ) else ( echo "You made a programming error: unknown APPVEYOR_BUILD_WORKER_IMAGE:" echo %APPVEYOR_BUILD_WORKER_IMAGE% exit /b ) ) else ( :: In default we use win64 VS 2015. :: Main reason is that currently, cuda 9 does not support VS 2017 newest :: version. To use cuda you will have to use 2015. set CMAKE_GENERATOR="Visual Studio 15 2017 Win64" ) ) echo CAFFE2_ROOT=%CAFFE2_ROOT% echo CMAKE_GENERATOR=%CMAKE_GENERATOR% echo CMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% if not exist %CAFFE2_ROOT%uild mkdir %CAFFE2_ROOT%uild cd %CAFFE2_ROOT%uild :: Set up cmake. We will skip building the test files right now. :: TODO: enable cuda support. cmake .. ^ -G%CMAKE_GENERATOR% ^ -DBUILD_TEST=OFF ^ -DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% ^ -DUSE_CUDA=%USE_CUDA% ^ -DUSE_NNPACK=OFF ^ -DUSE_CUB=OFF ^ -DUSE_GLOG=OFF ^ -DUSE_GFLAGS=OFF ^ -DUSE_LMDB=OFF ^ -DUSE_LEVELDB=OFF ^ -DUSE_ROCKSDB=OFF ^ -DUSE_OPENCV=OFF ^ -DBUILD_SHARED_LIBS=OFF ^ -DBUILD_PYTHON=OFF^ || goto :label_error :: Actually run the build cmake --build . --config %CMAKE_BUILD_TYPE% || goto :label_error echo "Caffe2 built successfully" cd %ORIGINAL_DIR% endlocal exit /b 0 :label_error echo "Caffe2 building failed" cd %ORIGINAL_DIR% endlocal exit /b 1
然后打开VS2017的开发人员命令提示符,执行“build_windows.bat”即可。
等待一段时间后,便在caffe2/build下生产很多VS的工程文件。
Caffe2的安装
以管理员运行VS2017,并使用VS打开caffe2/build/Caffe2.sln,打开后右键“INSTALL”项目并点击生成,便会执行caffe2库的编译和安装,默认安装目录为C:Program FilesCaffe2,可以修改caffe2/build/cmake_install.cmake的第5行来更改caffe2的安装路径。
VS下使用caffe2
使用前需要把caffe2/build/lib/Release下的所有库文件拷贝到C:Program FilesCaffe2lib(至于什么原因,我也不知道,可能是默认安装的库文件不全)。
新建的工程需要注意以下属性的配置:
(1)包含目录
(2)库目录
(3)附加依赖项
(4)SDL检查
(5)运行库
Linux下的编译和安装
进入caffe2/scripts目录,执行“sh build_local.sh”,然后进入caffe2/build目录,执行"sudo make install"即可。