Software development on Windows is always interesting. This page documents some platform-specific issues people have encountered, and ways to resolve them.
Windows 10 “helpfully” redirects the “python” executable in PATH to its bundled one, instead of any you may have installed separately (such as the one provided by Visual Studio). This breaks many python scripts.
To fix this:
python and python3%USERPROFILE%\AppData\Local\Microsoft\WindowsApps from your user-specific PATH if presentPATH. Appropriately adjust the path to the right version.
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64 for python itselfC:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Scripts for pipSome Python scripts used by optional features of specregex require the pyyaml python pacakge to be installed. Running pip install pyyaml in the appropriate environment will achieve this.
C:\Program Files\Git has been added to PATH (git-bash.exe lives here)C:\Program Files\Git\cmd has been added to PATH (git.exe lives here)Your home directory defaults to C:\Users\<Your name here>\.
CMake works the same on Windows as it does on Linux.
C:\Program Files\CMake\bin has been added to PATH. The installer has a tick-box to do this for you, but any open shells must be re-started to see the changes.link.exe installed by Git from /Git/usr/bin/link.exe, since it name-collides with the Windows linker. It is not straightforward to ensure that the Windows one always appears first in PATH, so we suggest just deleting link.exe (which is not a linker).
lld-link.exe is not a viable workaround because it discards Windows debug information.link.exe is not a dependency of ln, so this does not hinder the creation of symlinks.Make sure the /bin folder can be found in PATH.
If you choose to use the Ninja cmake generator, do not use versions later than 1.10.0. They introduce an as-yet-unfixed bug that causes it to crash in some circumstances.
Instead, either: - Use the JOM CMake generator. It’s functionally equivalent to GNU make on Linux, so may feel familiar to users with experience there. - Use the Visual Studio CMake generator - Use Ninja 1.9.0