dotnet/runtime

build-runtime.cmd fails when the latest version in C:\Program Files (x86)\Windows Kits\10\Lib does not contain ucrt

Open

#42,774 opened on 2020年9月26日

GitHub で見る
 (6 comments) (1 reaction) (0 assignees)C# (5,445 forks)batch import
area-Infrastructurehelp wanted

Repository metrics

Stars
 (17,886 stars)
PR merge metrics
 (平均マージ 12d 11h) (30d で 661 merged PRs)

説明

Initial cost estimate: 1 week Initial contacts: @trylek, @hoyosjs, @ViktorHofer

so I just freshly cloned the repo and failed to build. this was what I got when trying to build clr -

  CSC : warning CS1668: Invalid search path 'C:\Program Files (x86)\Windows Kits\10\lib\10.0.19041.0\ucrt\x64' specified in 'LIB environment variable' -- 'directory does not exist' [C:\runtime-doubly-fl\artifacts\obj\coreclr\Windows_NT.x64.Release\src\ToolBox\SOS\DacTableGen\dactablegen.csproj]
  CSC : warning CS1668: Invalid search path 'C:\Program Files (x86)\Windows Kits\10\lib\10.0.19041.0\ucrt\x86' specified in 'LIB environment variable' -- 'directory does not exist' [C:\runtime-doubly-fl\artifacts\obj\coreclr\Windows_NT.x64.Release\src\ToolBox\SOS\DacTableGen\dactablegen.csproj]
      4 Warning(s)
      0 Error(s)

  Time Elapsed 00:01:17.78
  File not found - *.dll
  0 File(s) copied
  BUILD: Error: Failed to copy the Universal CRT to the artifacts directory.
C:\runtime-doubly-fl\src\coreclr\runtime.proj(37,5): error MSB3073: The command ""C:\runtime-doubly-fl\src\coreclr\build-runtime.cmd" -x64 -release -enforcepgo" exited with code 4.

my latest version in C:\Program Files (x86)\Windows Kits\10\Lib is 10.0.19041.0 but it does not have a ucrt dir in it -

 Directory of C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0

08/19/2020  11:16 PM    <DIR>          .
08/19/2020  11:16 PM    <DIR>          ..
07/27/2020  01:23 AM    <DIR>          km
04/18/2019  06:46 PM               512 stub512.com
07/27/2020  12:44 AM    <DIR>          um

this is because I installed "Windows Driver Kit - Windows 10.0.19041.1" which created this 10.0.19041.0 dir but it did not install ucrt in it.

when I uninstalled the Windows Driver Kit the build succeeded. now the last ver in this dir does have ucrt:

C:\WINDOWS\system32>dir "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0" Volume in drive C is OSDisk Volume Serial Number is EA9A-AF54

 Directory of C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0

07/27/2020  12:56 AM    <DIR>          .
07/27/2020  12:56 AM    <DIR>          ..
07/27/2020  12:56 AM    <DIR>          ucrt
07/27/2020  12:56 AM    <DIR>          ucrt_enclave
07/27/2020  12:56 AM    <DIR>          um
               0 File(s)              0 bytes

so this says we have problems searching for the right dir for ucrt.

コントリビューターガイド