安裝程式 BuildProtobuf VS 2017
建立已編譯的 Protobuf 3.1.0 for CNTK
如果您想要自行建置 Protobuf 3.1.0 for CNTK,請遵循這些指示。 編譯的 Protobuf 版本將會位於 c:\local\protobuf-3.1.0-vs17
- 從 cmake.org安裝 CMake。
- 從 https://github.com/google/protobuf/archive/v3.1.0.zip 下載並解壓縮 protobuf 來源。
下列步驟假設 Protobuf 來源已解壓縮至目錄 c:\local\src\protobuf-3.1.0
。 下列指示會在 目錄中 c:\local\protobuf-3.1.0-vs17
建立 Protobuf 程式庫和標頭檔。 如果您的案例中此位置不同,請調整下列步驟以符合您的目錄結構。
有兩種方式可以透過批次檔或手動建置 CNTK Protobuf 程式庫。
透過批次檔建置
在目錄中 Tools\devInstall\Windows
,您會找到批次檔 buildProtoVS17.bat
。 此批次檔會採用兩個參數來建置 CNTK Protobuf 程式庫。 第一個參數是您上面解壓縮之 Protobuf 來源檔案的目錄,第二個參數是所建立 Protobuf 程式庫的目的地目錄。 在我們的案例中,請遵循標準Windows命令提示字元中的下列步驟:
c:
cd \repos\cntk\Tools\devInstall\Windows
buildProtoVS17 C:\local\src\protobuf-3.1.0 C:\local\protobuf-3.1.0-vs17
將環境變數 PROTOBUF_PATH
設定為 Protobuf 位置, (這是上述命令調用中的第二個參數,而不是來源位置!
setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17
CNTK Protobuf 程式庫的手動建置步驟
注意
如果 VS2017INSTALLDIR
Visual Studio安裝程式未設定環境變數,請手動進行設定。 確切的安裝目錄取決於 2017 (2017版,在此情況下) 並提供 (Community、Enterprise等) Visual Studio:。 C:\Program Files (x86)\Microsoft Visual Studio\<version>\<offering>
針對Visual Studio 2017 Enterprise版本,請執行:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise"
針對Visual Studio 2017 Community版本,請執行:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"
- 啟動 64 位Visual Studio 2017 開發環境。 最方便的方式是使用標準 Windows 命令殼層中的必要參數,在 Visual Studio 目錄中執行批次檔
vcvarsall.bat
:
"%VS2017INSTALLDIR%\VC\Auxiliary\Build\vcvarsall.bat" amd64 --vcvars_ver=14.11
如果您在系統上找不到此批次檔,請重新流覽 VS2017 的安裝,並確定您已選取 [VC++ 15.4 版 v14.11 工具組] 選項。 2.建立組建目錄:
cd C:\local\src\protobuf-3.1.0\cmake
mkdir build && cd build
- 建立偵錯組建:
mkdir debug && cd debug
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Debug -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF -DCMAKE_INSTALL_PREFIX="c:\local\protobuf-3.1.0-vs17" ..\..
nmake && nmake install
cd ..
- 建立發行組建:
mkdir release && cd release
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF -DCMAKE_INSTALL_PREFIX="c:\local\protobuf-3.1.0-vs17" ..\..
nmake && nmake install
cd ..
- 將環境變數
PROTOBUF_PATH
設定為 Protobuf 位置 (注意:這是上述 cmake 命令中使用的安裝位置,而不是來源位置!) :
setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17