I’ve tested latest Slicer master branch build using VS2017 and VS2019:
Slicer build and self-tests were successful (the same tests fail as in the nightly with VS2015)
Installation of scipy, matplotlib, and wxPython was successful (pip_install script did , and everything seemed to work fine (tested the plotting features with scripts here).
Packaging succeeded.
There is just one set of warnings on VS2017 that might cause issues on systems that don’t have VS2017 runtime libraries installed: “CMake Warning at C:/Program Files/CMake/share/cmake-3.14/Modules/InstallRequiredSystemLibraries.cmake:558 (message): system runtime library file does not exist: ‘MSVC_REDIST_DIR-NOTFOUND/x64/Microsoft.VC141.CRT/msvcp140.dll’” - but this seems to be a CMake issue and we can address it if we switch to VS2017 or VS2019 for the official builds.
This is great. Thanks for taking the time to do so.
While which version of CMake does this happen ? Which option did you select for the generator and toolset ? And is the warning report during configuration or during package creation ?
CMake generator options for VS2017: -G “Visual Studio 16 2019” -A x64 -T v141
CMake generator options for VS2019: -G “Visual Studio 16 2019” -A x64 -T v142
The error occurred during configuration. There was no warning or error during package generation.
The files that are not found are available at “c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\14.16.27012\x64\Microsoft.VC141.CRT”.
MSVC_REDIST_DIR is correctly found for VS2015 and VS2019 toolsets:
MSVC_REDIST_DIR:PATH=C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/redist
As far as I remember, I only installed (and updated) Visual Studio Community edition using the default installer. I don’t know why there are files in both “Microsoft Visual Studio” and “Microsoft Visual Studio 14.0” subfolders.
I issued a merge request in CMake for the MSVC_REDIST_DIR-NOTFOUND issue. It has been merged and will be included in the CMake 3.15.1 release which will probably come out in 2 weeks or so.
So one less issue towards building Slicer with a newer visual studio toolset.
Newer CMake version has been installed on windows and macos build machines, then corresponding dashboard scripts have been updated
docker image used for linux build is also being regenerated to include newer CMake
Is there anything else preventing the change for the Windows Slicer nightly build being built with a newer toolset(v142 or at least v141) and updating to use the latest Qt LTS version (5.12.4)?
It is a matter of taking the time to install the binaries on windows and update the dashboard script. for sake of consistency, I suggest we update the Qt version on all platforms.
Todo:
Install Qt 5.12.4 on windows build machine (overload)