Windows下VS2015編譯caffe
目前我所見的Windows下編譯caffe都是用VS2013。但既然現在BVLC的windows版本的caffe可以支援VS2015編譯,那麼就不勉強自己再去下個VS2013來特地編譯caffe。
現在就開始講如何在VS2015編譯caffe的具體過程。
先連結官方的github:https://github.com/BVLC/caffe/tree/windows
一:準備工作
文件是這麼說:
Requirements Visual Studio 2013 or 2015 CMake 3.4 or higher (Visual Studio and Ninja generators are supported) Python 2.7 Anaconda x64 (or Miniconda). CUDA 7.5 or 8.0 (optional) (use CUDA 8 if using Visual Studio 2015) cuDNN v5 (optional) We assume that cmake.exe and python.exe are on your PATH.
我的配置是VS2015+CMake3.7.1+Python2.7(x64,一定要64位,32位Python在build的時候會出現連結錯誤)+Anaconda4.2.13(x64)+CUDA8.0(x64)+cuDNN v5.1(x64)
接著cmake和python一定要新增到PATH裡面。
二:編譯
根據文件:你只需要在cmd下執行以下4句就可以編譯成功。
C:\Projects> git clone https://github.com/BVLC/caffe.git C:\Projects> cd caffe C:\Projects\caffe> git checkout windows :: Edit any of the options inside build_win.cmd to suit your needs C:\Projects\caffe> scripts\build_win.cmd
但是你懂得,國內的網路奇葩,用命令列下載github資源的速度實在堪憂。
所以一般都是選擇下載zip壓縮包,然後解壓到目標路徑的做法。
接著,進入caffe資料夾,在該目錄開啟cmd,執行
C:\Projects\caffe> scripts\build_win.cmd
此時,它就會提醒你某些python的庫沒有配好,這些庫是six、numpy、pyaml(文件說還有scipy、matplotlib和scikit-image,其實只要前面三個就可以通過配置了)。這些庫可以用pip或者Anaconda安裝
當你安裝完庫之後,再一次執行上面那句命令,它就會自動去下載一個依賴庫。
好,還是同樣的問題,國內的網路奇葩,用命令列下載這個github專案上的依賴庫的速度實在堪憂,所以這時候就要“曲線救國”:
進入scripts資料夾,用編輯器開啟download_prebuilt_dependencies.py。然後,你就發現了依賴庫的的下載地址,這裡我選的是v140版本的py27依賴庫。
(懶人專用)地址連結:https://github.com/willyd/caffe-builder/releases/download/v1.0.1/libraries_v140_x64_py27_1.0.1.tar.bz2
下完依賴包,然後在caffe目錄下,新建一個名為“build”的資料夾,然後再把我們下好的依賴包解壓到build資料夾裡面。
解壓完後,發現它是個libraries資料夾,然後把\libraries\bin,\libraries\lib,\libraries\x64\vc14\bin三個的絕對路徑新增到環境變數裡面(新增完後記得重啟~)。
重要的一步來了:
進入scripts資料夾,把build_win.cmd的字尾改成txt,然後用編輯器開啟,115行-137行的內容都可以刪除了(沒錯,以上步驟就是人工完成build準備工作的批處理。)
刪除部分如下:
if NOT EXIST build mkdir build
pushd build
:: Setup the environement for VS x64
set batch_file=!VS%MSVC_VERSION%0COMNTOOLS!..\..\VC\vcvarsall.bat
call "%batch_file%" amd64
,如果需要cuDNN庫,那麼在(沒刪之前的)143行-155行那一塊。
:: Configure using cmake and using the caffe-builder dependencies
:: Add -DCUDNN_ROOT=C:/Projects/caffe/cudnn-8.0-windows10-x64-v5.1/cuda ^
:: below to use cuDNN
cmake -G"!CMAKE_GENERATOR!" ^
-DBLAS=Open ^
-DCMAKE_BUILD_TYPE:STRING=%CMAKE_CONFIG% ^
-DBUILD_SHARED_LIBS:BOOL=%CMAKE_BUILD_SHARED_LIBS% ^
-DBUILD_python:BOOL=%BUILD_PYTHON% ^
-DBUILD_python_layer:BOOL=%BUILD_PYTHON_LAYER% ^
-DBUILD_matlab:BOOL=%BUILD_MATLAB% ^
-DCPU_ONLY:BOOL=%CPU_ONLY% ^
-DCUDNN_ROOT=C:\Projects\cuda ^
::可以新增在這裡,貌似是要反斜槓?
-C %cd%\libraries\caffe-builder-config.cmake ^
%~dp0\..
可以按提示新增。然後儲存,把字尾修改回“cmd”。
最後一步:到build目錄下開啟命令視窗執行
C:\Projects\caffe\build> build_win.cmd
然後,你就可以經過一個漫長的等待,等待cmake把vs2015的專案給build出來。
build完之後,在build的目錄下就會出現一個caffe.sln工程檔案。然後就可以用VS2015按需編譯出Release程式。此時無需為VS工程配置環境。
以上。
python3.5也是可以的~再也不將就了~
可能行數什麼的有改動.....就醬吧