New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vswhere doesn't find "Visual C++ for Python" #134
Comments
vswhere finds installation roots. From there you have to construct the path or do a recursive search. It does not scan the hard drive or search %PATH%. It's not intended to. The README and the wiki have more information. |
The VC for Python can be found in the registry.
Can vswhere be updated to check that path as well? |
That is outside the scope of vswhere. Our wiki contains more information, including a newly release FAQ and an example for finding VC as also recommended by the VC team. Registry lookups are not supported since they can only point to a single instance. |
Your code does use registry lookups to find legacy installs currently... https://github.com/Microsoft/vswhere/blob/develop/src/vswhere.lib/LegacyProvider.h#L17 And the list of searched legacy versions: https://github.com/Microsoft/vswhere/blob/develop/src/vswhere.lib/InstanceSelector.cpp#L125 Looks like it's hardcoded to only look for legacy versions 10.0, 11.0, 12.0, 14.0 Can you point to a scope statement which specifies which versions of visual studio (legacy) are meant to be supported? |
Ok, I'm still a bit tentative here, so correct my assumptions:
|
@efahl, no, vswhere locations installation paths (roots) of Visual Studio (by default) or related SKUs (if you use @bdbaddog registry is only supported for legacy detection. We do not support it for Visual Studio 2017. The fact that I implemented it and the lines of code you referenced exist are proof it's supported but, as with the point of vswhere described above, only finds the root installation path. |
@heaths Sure. the 9.0 for python is a legacy. SCons (scons.org) supports back to Visual Studio 6.0 currently. I was just hoping we could use vswhere to support all versions of Visual Studio we support and drop our registry inspection code all together. Providing partial information on older versions would be of use for your user community.. Would a pull request be accepted? |
Finding specific tool locations is outside the scope of vswhere. As previously state, it is for finding the root installation path only. |
Yes. I'm talking about a patch to find root install path of older versions of visual studio (older than 2010) |
At the time legacy support was added, versions older than Visual Studio 2010 are not supported and we made a decision not to support them in vswhere. You will need to continue using legacy registry detection for older, unsupported versions of Visual Studio, |
Attempting to find all cl.exe locations on one of our development machines shows all but the 9.0 installation.
Here's what cygwin find shows me:
The text was updated successfully, but these errors were encountered: