Configurare Buildzlib VS17
Creazione di una libreria di compressione zlib/libzip per CNTK
Nelle istruzioni vengono usati i percorsi di installazione seguenti:
- origini libzip:
c:\local\src\libzip-1.1.3
- origini zlib:
c:\local\src\zlib\zlib-1.2.8
- Directory di compilazione per file binari zlib e libzip:
c:\local\zlib-vs17
È possibile usare tutti i percorsi desiderati, ma prendere nota della nota nella cartella di destinazione per i file binari riportati di seguito.
- Installare CMake. Includere la cartella binari di CMake nella cartella
PATH
- Scaricare il codice sorgente libzip e decomprimere in
c:\local\src\libzip-1.1.3
- Scaricare il codice sorgente zlib e decomprimerlo in
c:\local\src\zlib\zlib-1.2.8
Esistono due modi per compilare la libreria di compressione lib/libzip per CNTK, tramite un file batch o manualmente.
Compilazione tramite un file batch
Nella directory Tools\devInstall\Windows
si trova il file buildZlibVS17.bat
batch . Questo file batch accetta tre parametri per compilare la libreria CNTK Protobuf. Il primo parametro è la directory dei file di libzip
origine decompressi in precedenza, il secondo parametro è la directory dei file di zlib
origine, il terzo parametro è la directory di destinazione per la libreria creata. In questo caso, seguire questa procedura da un prompt dei comandi di Windows standard:
c:
cd \repos\cntk\Tools\devInstall\Windows
buildZlibVS17 c:\local\src\libzip-1.1.3 c:\local\src\zlib\zlib-1.2.8 c:\local\zlib-vs17
Impostare la variabile ZLIB_PATH
di ambiente sul percorso della libreria creata. Questo è il terzo parametro nella chiamata al comando precedente, non il percorso delle origini.
setx ZLIB_PATH c:\local\zlib-vs17
Passaggi di compilazione manuali per una libreria di compressione CNTK
Gli aspetti seguenti sono importanti:
- I comandi di compilazione per zlib e libzip devono usare la stessa cartella di destinazione per i file binari (specificati tramite
-DCMAKE_INSTALL_PREFIX
il parametro nelcmake
comando seguente) - L'ordine di compilazione è importante. È necessario prima compilare zlib perché libzip dipende da esso
Ambiente del prompt dei comandi per la compilazione
Nota
Se VS2017INSTALLDIR
la variabile di ambiente non è stata impostata dal programma di installazione di Visual Studio, impostarla manualmente. La directory di installazione esatta dipende sia dalla versione (2017 in questo caso) che dall'offerta (Community, Enterprise e così via) di Visual Studio, in base al modello seguente: C:\Program Files (x86)\Microsoft Visual Studio\<version>\<offering>
.
Per Visual Studio edizione Enterprise 2017, eseguire:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise"
Per Visual Studio edizione Community 2017, eseguire:
setx VS2017INSTALLDIR "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community"
Avviare un ambiente di sviluppo a 64 bit Visual Studio 2017. Il modo più pratico consiste nell'eseguire il file vcvarsall.bat
batch nella directory Visual Studio con i parametri necessari da una shell dei comandi standard di Windows:
"%VS2017INSTALLDIR%\VC\Auxiliary\Build\vcvarsall.bat" amd64 --vcvars_ver=14.11
Se non è possibile trovare questo file batch nel sistema, rivedere l'installazione di VS2017 e assicurarsi di avere selezionato l'opzione "VC++ versione 15.4 v14.11".
Compilazione di zlib
Eseguire i comandi seguenti dal prompt dei comandi di VS2017 x64 Native Tools:
cd c:\local\src\zlib\zlib-1.2.8
mkdir build
cd build
cmake .. -G"Visual Studio 15" -DCMAKE_INSTALL_PREFIX="c:\local\zlib-vs17"
msbuild /P:Configuration=Release INSTALL.vcxproj
Compilazione di libzip
Eseguire i comandi seguenti dal prompt dei comandi di VS2017 x64 Native Tools:
cd c:\local\src\libzip-1.1.3
mkdir build
cd build
cmake .. -G"Visual Studio 15 Win64" -DCMAKE_INSTALL_PREFIX="c:\local\zlib-vs17"
msbuild libzip.sln /t:zip /P:Configuration=Release
cmake -DBUILD_TYPE=Release -P cmake_install.cmake
MSBuild comando precedente può generare alcuni avvisi. È previsto e può essere ignorato.
L'ultimo cmake
comando dell'elenco precedente genererà l'errore seguente:
CMake Error at src/cmake_install.cmake:34 (file):
file INSTALL cannot find "C:/libzip/build/src/Release/zipcmp.exe".
È previsto e può essere ignorato: tutti i file binari necessari (zip.dll
e zlib.dll
) devono essere già in c:\local\zlib-vs17
Preparazione dell'ambiente
Impostare la variabile di ambiente seguente:
setx ZLIB_PATH c:\local\zlib-vs17