Bug 20005 – VC++ can exists in separate BuildTools folder (not only in Community\Enterprise)
Status
RESOLVED
Resolution
FIXED
Severity
enhancement
Priority
P1
Component
visuald
Product
D
Version
D2
Platform
x86_64
OS
Windows
Creation time
2019-06-25T14:10:08Z
Last change time
2019-08-04T15:29:18Z
Assigned to
No Owner
Creator
a11e99z
Comments
Comment #0 by black80 — 2019-06-25T14:10:08Z
Comment #1 by black80 — 2019-06-25T14:23:06Z
VC++ compiler (if it needed to VD) can be installed by BuildTools installer from MS.
and default folder is C:\Program Files (x86)\Microsoft Visual Studio\20xx\BuildTools (not Comminuty or something)
so VD should use it too not only VSINSTALLDIRECTORY
2nd (dunno how done for now, maybe next already is done):
such folder can contains many SDKs with diff versions:
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.20.27508\
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.21.27702
each of such folder contains own include, tools and libs. last two with diff host and guest archs - bin\Hostx64\x64 or lib\arm.
every update of VS and BuildTools can delete old and add new SDK.
so VD should contains option to select with SDK should be used or just "update to newest SDK" where VD will select lastest SDK from both folders (if they are exists) by number of SDK - 14.21.27702 is latest one.
Comment #2 by black80 — 2019-06-25T14:26:14Z
to 2nd:
when VD refs to some concrete SDK and on some running of VS (check at startup) can see that this SDK does not exists then VD can select latest SDK automatically
Comment #3 by r.sagitario — 2019-08-04T15:29:18Z
Buildtools now also supported by https://github.com/dlang/visuald/releases/tag/v0.50.1-beta1
regarding SDK version: Visual D detects SDK versions on every start similar to the VS batch vcvarsall.bat and sets environment variables accordingly and uses these for the respective settings. This makes it agnostic to updates of the Win10 SDK, but might not work when switching to older SDKs.