Delen via


BuildProtobuf VS 2017 instellen

Een gecompileerde Protobuf 3.1.0 maken voor CNTK

Als u de Protobuf 3.1.0 voor CNTK zelf wilt bouwen, volgt u deze instructies. De gecompileerde Protobuf-versie bevindt zich in c:\local\protobuf-3.1.0-vs17

In de volgende stappen wordt ervan uitgegaan dat de Protobuf-bronnen zijn uitgepakt naar de map c:\local\src\protobuf-3.1.0. In de onderstaande instructies worden de Protobuf-bibliotheken en headerbestanden in de map c:\local\protobuf-3.1.0-vs17gemaakt. Als deze locatie in uw geval verschilt, past u de onderstaande stappen aan zodat deze overeenkomt met uw mapstructuur.

Er zijn twee manieren om de CNTK Protobuf-bibliotheek te bouwen, hetzij via een batchbestand of handmatig.

Bouwen via een batchbestand

In de map Tools\devInstall\Windows vindt u het batchbestand buildProtoVS17.bat. Dit batchbestand heeft twee parameters nodig om de CNTK Protobuf-bibliotheek te bouwen. De eerste parameter is de map van de Protobuf-bronbestanden die u hierboven hebt uitgepakt. De tweede parameter is de doelmap voor de gemaakte Protobuf-bibliotheek. In ons geval volgt u deze stappen van een standaard Windows opdrachtprompt:

c:
cd \repos\cntk\Tools\devInstall\Windows
buildProtoVS17 C:\local\src\protobuf-3.1.0 C:\local\protobuf-3.1.0-vs17

Stel de omgevingsvariabele PROTOBUF_PATH in op de Protobuf-locatie (dit is de tweede parameter in de bovenstaande opdrachttoeroep, niet de locatie van de bronnen!

setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17

Handmatige buildstappen voor een CNTK Protobuf-bibliotheek

Notitie

Als VS2017INSTALLDIR de omgevingsvariabele niet is ingesteld door het Visual Studio-installatieprogramma, stelt u deze handmatig in. De exacte installatiemap is afhankelijk van zowel de versie (2017 in dit geval) als het aanbieden (Community, Enterprise, enzovoort) van Visual Studio, volgens het volgende patroon: C:\Program Files (x86)\Microsoft Visual Studio\<version>\<offering>

Voor Visual Studio Enterprise-editie 2017 voert u het volgende uit:

setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise"

Voer voor Visual Studio communityversie 2017 de volgende opdracht uit:

setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"
  1. Start een 64-bits Visual Studio 2017-ontwikkelomgeving. De handigste manier is om het batchbestand vcvarsall.bat uit te voeren in de map Visual Studio met de vereiste parameters uit een standaard Windows-opdrachtshell:
"%VS2017INSTALLDIR%\VC\Auxiliary\Build\vcvarsall.bat" amd64 --vcvars_ver=14.11

Als u dit batchbestand niet op uw systeem kunt vinden, gaat u opnieuw naar de installatie van VS2017 en controleert u of u de optie VC++ versie 15.4 v14.11 toolset hebt geselecteerd. 2. Maak een buildmap:

cd C:\local\src\protobuf-3.1.0\cmake
mkdir build && cd build
  1. Een build voor foutopsporing maken:
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 ..
  1. Een release-build maken:
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 ..
  1. Stel de omgevingsvariabele in PROTOBUF_PATH op de Protobuf-locatie (opmerking: dit is de installatielocatie die wordt gebruikt in de bovenstaande opdracht cmake, niet de locatie van de bronnen!):
setx PROTOBUF_PATH c:\local\protobuf-3.1.0-vs17