Root in Windows 10 with MSVC 19 Incompatibilites

Dear Rooters,

Just wanted to report that none of the root versions available are curently comatible with the latest windows SDK in MSVC. That moight be an issue for some people but a workaround exist by selecting the installation of an older sdk and built tools during the Visual Studio installation.
The setup that seems to work for the moment is version 14.26.28801, while anything above will not properly work. If someone has already installed both versions, it is possible to correctly set the environment to use the compatible version by calling:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat

followed by the options: x86 10.0.18362.0 -vcvars_ver=14.26.28801

The first option is the windows SDK version, and the one mentioned above is also stable and seems to be compatible with version 6.22 and 6.24.

I am a bit puzzled though because in the precompiled binaries for Root I though that FFTW was included by default for root 6. Isn’t that the case for windows builds?

There incompatibilities between different versions of Visual Studio are a known issue, and thanks for the recipe. We keep updating the master branch of ROOT to make sure it compiles with the latest version of VS 2019 (we currently have three open bug report to Microsoft), and we can’t backport fixes for older versions of ROOT, that’s the reason why we still use an old version of VS 2019 to produce binaries. And regarding FFTW, it is not included in the Windows binaries because we cannot distribute the (external) FFTW binaries together with ROOT

Ok thanks, I though mentioning it here for anyone else trying to install root in Windows. It might be helpful if the SDK and the tookit versions were mentioned at the website along with the download links for the windows binaries for reference.
For the FFTW though, I assume that I would need to rebuilt root in order to have the feature right?

Correct

The issue is that until recently, the binaries were compatible with more recent versions of Visual Studio, but not anymore with the latest major updates. I’ll see if I can add the info on the web page