Configurar o BuildProtobuf VS 2017
Criando um Protobuf 3.1.0 compilado para CNTK
Se você quiser criar o Protobuf 3.1.0 para CNTK você mesmo, siga estas instruções. A versão do Protobuf compilada estará localizada em c:\local\protobuf-3.1.0-vs17
- Instale o CMake do cmake.org.
- Baixar e desempacotar as fontes de protobuf de https://github.com/google/protobuf/archive/v3.1.0.zip.
As etapas a seguir pressupõem que as fontes do Protobuf foram descompactadas para o diretório c:\local\src\protobuf-3.1.0
. As instruções abaixo criarão as bibliotecas protobuf e os arquivos de cabeçalho no diretório c:\local\protobuf-3.1.0-vs17
. Se esse local for diferente no seu caso, adapte as etapas abaixo para corresponder à sua estrutura de diretório.
Há duas maneiras de criar a biblioteca CNTK Protobuf, seja por meio de um arquivo em lote ou manualmente.
Criando por meio de um arquivo em lote
No diretório Tools\devInstall\Windows
, você encontra o arquivo buildProtoVS17.bat
em lote. Esse arquivo em lote usa dois parâmetros para criar a biblioteca CNTK Protobuf. O primeiro parâmetro é o diretório dos arquivos de origem protobuf que você desempacotou acima, o segundo parâmetro é o diretório de destino da biblioteca protobuf criada. Em nosso caso, siga estas etapas de um prompt de comando Windows padrão:
c:
cd \repos\cntk\Tools\devInstall\Windows
buildProtoVS17 C:\local\src\protobuf-3.1.0 C:\local\protobuf-3.1.0-vs17
Defina a variável PROTOBUF_PATH
de ambiente para o local do Protobuf (este é o segundo parâmetro na invocação de comando acima, não o local de origem!
setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17
Etapas de build manuais para uma biblioteca CNTK Protobuf
Observação
Se VS2017INSTALLDIR
a variável de ambiente não foi definida pelo instalador Visual Studio, defina-a manualmente. O diretório de instalação exato depende da versão (2017 nesse caso) e da oferta (Community, Enterprise etc) de Visual Studio, de acordo com o seguinte padrão: C:\Program Files (x86)\Microsoft Visual Studio\<version>\<offering>
.
Para Visual Studio edição Enterprise de 2017, execute:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise"
Para Visual Studio edição Community de 2017, execute:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"
- Inicie um ambiente de desenvolvimento de 64 bits Visual Studio 2017. A maneira mais conveniente é executar o arquivo
vcvarsall.bat
em lote no diretório Visual Studio com os parâmetros necessários de um shell de comando padrão do Windows:
"%VS2017INSTALLDIR%\VC\Auxiliary\Build\vcvarsall.bat" amd64 --vcvars_ver=14.11
Se você não conseguir encontrar esse arquivo em lote em seu sistema, reveja a instalação do VS2017 e verifique se você tem a opção "VC++ versão 15.4 v14.11 toolset" selecionada. 2. Criar um diretório de build:
cd C:\local\src\protobuf-3.1.0\cmake
mkdir build && cd build
- Criar um build de depuração:
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 ..
- Criar um build de versão:
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 ..
- Defina a variável
PROTOBUF_PATH
de ambiente para o local do Protobuf (Observação: este é o local de instalação usado no comando cmake acima, não o local de origem!):
setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17