Настройка BuildProtobuf VS 2017
Создание скомпилированного Protobuf 3.1.0 для CNTK
Если вы хотите создать Protobuf 3.1.0 для CNTK самостоятельно, следуйте этим инструкциям. Скомпилированная версия Protobuf будет находиться в c:\local\protobuf-3.1.0-vs17
- Установите CMake из cmake.org.
- Скачайте и распакуйте источники protobuf из https://github.com/google/protobuf/archive/v3.1.0.zip.
В следующих шагах предполагается, что источники Protobuf были распакованы в каталог c:\local\src\protobuf-3.1.0
. Приведенные ниже инструкции создают библиотеки Protobuf и файлы заголовков в каталоге c:\local\protobuf-3.1.0-vs17
. Если это расположение отличается в вашем случае, измените приведенные ниже действия в соответствии со структурой каталогов.
Существует два способа создания библиотеки 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
Действия по сборке вручную для библиотеки protobuf CNTK
Примечание
Если VS2017INSTALLDIR
переменная среды не была задана установщиком Visual Studio, установите ее вручную. Точный каталог установки зависит от версии (2017 в данном случае) и предложения (Community, Enterprise и т. д.) Visual Studio в соответствии со следующим шаблоном: C:\Program Files (x86)\Microsoft Visual Studio\<version>\<offering>
Для выпуска Enterprise Visual Studio 2017 выполните следующую команду:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise"
Для выпуска Community Visual Studio 2017 выполните следующую команду:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"
- Запустите 64-разрядную среду разработки Visual Studio 2017. Самый удобный способ — выполнить пакетный файл
vcvarsall.bat
в каталоге Visual Studio с необходимыми параметрами из стандартной командной оболочки Windows:
"%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