diff --git a/Scripts/install/windows/ps/_info.ps1 b/Scripts/install/windows/ps/_info.ps1 index 54c1292f1..d70d4e836 100644 --- a/Scripts/install/windows/ps/_info.ps1 +++ b/Scripts/install/windows/ps/_info.ps1 @@ -27,7 +27,7 @@ The script will analyse your machine and will determine which components are req The required components will be downloaded in [$localCache] Repeated operation of this script will reuse already downloaded components. - - If required VS2015 Runtime will be installed + - If required VS2017 Runtime will be installed - If required MSMPI will be installed - Anaconda3 will be installed into [$AnacondaBasePath] - A CNTK-PY$PyVersion environment will be created or updated in [$AnacondaBasePath\envs] diff --git a/Scripts/install/windows/ps/_operations.ps1 b/Scripts/install/windows/ps/_operations.ps1 index 6aa6f5444..ab19fdd70 100644 --- a/Scripts/install/windows/ps/_operations.ps1 +++ b/Scripts/install/windows/ps/_operations.ps1 @@ -12,21 +12,21 @@ Function Set-OperationsInfo( Download = @( ) ; Action = @() ; }, - @{Name = "Installation VS2015 Runtime"; ShortName = "VS2015"; Info = "Install VS2015 Runtime"; + @{Name = "Installation VS2017 Runtime"; ShortName = "VS2017"; Info = "Install VS2017 Runtime"; Verification = @( @{Function = "VerifyWinProductExists"; Match = "^Microsoft Visual C\+\+ 201(5|7) x64 Additional Runtime" }, @{Function = "VerifyWinProductExists"; Match = "^Microsoft Visual C\+\+ 201(5|7) x64 Minimum Runtime" } ); Download = @( ) ; - Action = @( @{Function = "InstallExe"; Command = "$cntkRootDir\prerequisites\VS2015\vc_redist.x64.exe"; Param = "/install /passive /norestart"; Message="Installing VS2015 Runtime...." } ) + Action = @( @{Function = "InstallExe"; Command = "$cntkRootDir\prerequisites\VS2017\vc_redist.x64.exe"; Param = "/install /passive /norestart"; Message="Installing VS2017 Runtime...." } ) }, @{Name = "MSMPI Installation"; ShortName = "CNTK"; Info = "Install MSMPI"; Verification = @( @{Function = "VerifyWinProductVersion"; Match = "^Microsoft MPI \(\d+\."; Version = "7.0.12437.6" } ); Download = @( ) ; Action = @( @{Function = "InstallExe"; Command = "$cntkRootDir\prerequisites\msmpisetup.EXE"; Param = "/unattend"; Message="Installing MSMPI ...." } ) }, - @{Name = "Anaconda3-4.1.1"; ShortName = "ANA3-411"; Info = "Install Anaconda3-4.1.10"; + @{Name = "Anaconda3-4.3.1"; ShortName = "ANA3-431"; Info = "Install Anaconda3-4.3.1"; Verification = @( @{Function = "VerifyDirectory"; Path = "$AnacondaBasePath"; } ); - Download = @( @{Function = "Download"; Source = "https://repo.continuum.io/archive/Anaconda3-4.1.1-Windows-x86_64.exe"; Destination = "$localCache\Anaconda3-4.1.1-Windows-x86_64.exe" } ); - Action = @( @{Function = "InstallExe"; Command = "$localCache\Anaconda3-4.1.1-Windows-x86_64.exe"; Param = "/InstallationType=JustMe /AddToPath=0 /RegisterPython=0 /S /D=$AnacondaBasePath"; runAs=$false; Message="Installing Anaconda3-4.1.1. Please be patient ...."} ); + Download = @( @{Function = "Download"; Source = "https://repo.continuum.io/archive/Anaconda3-4.3.1-Windows-x86_64.exe"; Destination = "$localCache\Anaconda3-4.3.1-Windows-x86_64.exe" } ); + Action = @( @{Function = "InstallExe"; Command = "$localCache\Anaconda3-4.3.1-Windows-x86_64.exe"; Param = "/InstallationType=JustMe /AddToPath=0 /RegisterPython=0 /S /D=$AnacondaBasePath"; runAs=$false; Message="Installing Anaconda3-4.3.1. Please be patient ...."} ); }, @{Name = "CNTK Python Environment"; ShortName = "CNTKPY"; Info = "Setup CNTK PythonEnvironment $PyVersion"; Verification = @( @{Function = "VerifyRunAlways" } ); diff --git a/Scripts/install/windows/ps/install.ps1 b/Scripts/install/windows/ps/install.ps1 index 198c7a8dc..645b72090 100644 --- a/Scripts/install/windows/ps/install.ps1 +++ b/Scripts/install/windows/ps/install.ps1 @@ -9,8 +9,8 @@ By default the script will: - - Create or reuse Anaconda3 in the folder `C:\local\Anaconda3-4.1.1-Windows-x86_64` - - Create or update a CNTK Python 3.5 environment in `C:\local\Anaconda3-4.1.1-Windows-x86_64\envs\cntk-py35` + - Create or reuse Anaconda3 in the folder `C:\local\Anaconda3-4.3.1-Windows-x86_64` + - Create or update a CNTK Python 3.5 environment in `C:\local\Anaconda3-4.3.1-Windows-x86_64\envs\cntk-py35` .DESCRIPTION The script will download and install the CNTK prerequisites and Anaconda environment. @@ -19,7 +19,7 @@ The required components will be downloaded and cached. Repeated operation of this script will reuse already downloaded components. - - If required VS2015 Runtime will be installed + - If required VS2017 Runtime will be installed - If required MSMPI will be installed - Anaconda3 will be installed into [] - A CNTK-PY environment will be created or updated in [\envs] @@ -34,8 +34,8 @@ .PARAMETER AnacondaBasePath This optional parameter allows you to specify the location of an Anaconda installation to be used or created on your machine. If the directory exists on your machine, the script will continue under the assumption that this is a working - Anaconda 3 (4.1.1) (or compatible) installation, and will create the CNTK Python environment in that location. - By default a version of Anaconda3 will be installed into [C:\local\Anaconda3-4.1.1-Windows-x86_64] + Anaconda 3 (4.3.1) (or compatible) installation, and will create the CNTK Python environment in that location. + By default a version of Anaconda3 will be installed into [C:\local\Anaconda3-4.3.1-Windows-x86_64] .PARAMETER PyVersion This is an optional parameter and can be used to specify the Python version used in the CNTK Python environment. @@ -60,8 +60,8 @@ [CmdletBinding()] Param( - [Parameter(Mandatory=$false)] [string] $AnacondaBasePath = "C:\local\Anaconda3-4.1.1-Windows-x86_64", - [Parameter(Mandatory=$false)] [ValidateSet("27", "34", "35", "36")] [string] $PyVersion = "35", + [Parameter(Mandatory=$false)] [string] $AnacondaBasePath = "C:\local\Anaconda3-4.3.1-Windows-x86_64", + [Parameter(Mandatory=$false)] [ValidateSet("27", "35", "36")] [string] $PyVersion = "35", [Parameter(Mandatory=$false)] [switch] $Execute = $true, [Parameter(Mandatory=$false)] [switch] $NoConfirm, [Parameter(Mandatory=$false)] [string] $WheelBaseUrl = "https://cntk.ai/PythonWheel") @@ -87,7 +87,7 @@ function VerifyInstallationContent( [Parameter(Mandatory=$true)][string] $path) { $structureCorrect = (join-path $path cntk\cntk.exe | test-path -PathType Leaf) - $structureCorrect = (join-path $path prerequisites\VS2015\vc_redist.x64.exe | test-path -PathType Leaf) -and $structureCorrect + $structureCorrect = (join-path $path prerequisites\VS2017\vc_redist.x64.exe | test-path -PathType Leaf) -and $structureCorrect $structureCorrect = (join-path $path version.txt | test-path -PathType Leaf) -and $structureCorrect Write-Verbose "[VerifyInstallationContent]: [$path] result [$structureCorrect]" diff --git a/bindings/python/vsbuild.bat b/bindings/python/vsbuild.bat index 5eb015aaa..69e3189ab 100644 --- a/bindings/python/vsbuild.bat +++ b/bindings/python/vsbuild.bat @@ -30,6 +30,8 @@ set p_CNTK_PY35_PATH=%~9 shift set p_CNTK_PY36_PATH=%~9 +set p_PYTHON_BINDINGS_DIR=%~dp0 + REM Construct p_CNTK_PY_VERSIONS if not explicitly defined REM (Note: to disable Python build completely, no CNTK_PYx_PATH variable must be defined) if not defined p_CNTK_PY_VERSIONS ( @@ -70,6 +72,7 @@ if not exist "%VS2017INSTALLDIR%\VC\Auxiliary\build\vcvarsall.bat" ( ) call "%VS2017INSTALLDIR%\VC\Auxiliary\build\vcvarsall.bat" amd64 -vcvars_ver=14.11 +cd %p_PYTHON_BINDINGS_DIR% set CNTK_LIB_PATH=%p_OutDir%