次のエラーが表示されます。
c:\test>cl helloworld.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23026 for x86
Copyright (C) Microsoft Corporation. All rights reserved.
helloworld.cpp
helloworld.cpp(1): fatal error C1083: Cannot open include file: 'stdio.h': No such file or directory
Vcvars32.batによって設定されるインクルードパスは次のとおりです。
INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Windows Kits\10\include\wdf\ucrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um;C:\Program Files (x86)\Windows Kits\10\include\wdf\shared;C:\Program Files (x86)\Windows Kits\10\include\wdf\um;C:\Program Files (x86)\Windows Kits\10\include\wdf\winrt;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Windows Kits\10\include\wdf\ucrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um;C:\Program Files (x86)\Windows Kits\10\include\wdf\shared;C:\Program Files (x86)\Windows Kits\10\include\wdf\um;C:\Program Files (x86)\Windows Kits\10\include\wdf\winrt;
環境変数のパスは、「C:\ Program Files(x86)\ Windows Kits\10\include\wdf\winrt; "など。ただし、ファイルの実際の場所はC:\ Program Files(x86)\ Windows Kits\10\include\-10.0.10240.\winrt;
ここで何か間違ったことをしていますか?どんな助けも大歓迎です。
p.s。私の本当の目的は、boost 1.58ライブラリをビルドすることです(ただし、上記と同じ問題に悩まされているため、最初に問題を切り分けたいと考えていました)。
p.p.s。次の環境変数に気付きました。しかし、それらを変更することはできません。
WindowsSDKLibVersion=wdf\
WindowsSDKVersion=wdf\
WDK(Windows Driver Kit-10.0.26639)がインストールされている場合、インクルードパスがWDKによって上書きされるため、この問題が発生します。これを機能させるには、WDKをアンインストールする必要があります。
Microsoft Connectの問題を見てください- https://connect.Microsoft.com/VisualStudio/feedback/details/1610302/universalcrt-detection-breaks-when-windows-driver-kit-is-installed =
Windows SDK 8.1に対してVC++プロジェクトをビルドすると、VS2017(15.5.5)で同様の問題が発生しました。
C1083インクルードファイルを開けません: 'assert.h':そのようなファイルまたはディレクトリはありません
Windows 8.1 SDK and UCRT SDK
VSインストーラーで問題を解決しました。
私の場合、これらのパスを追加のインクルードパスに追加しました。
C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\VC\include; C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\VC\atlmfc\include; C:\ Program Files(x86)\ Windows Kits\10\Include\10.0.10586.0\ucrt; C:\ Program Files(x86)\ Windows Kits\NETFXSDK\4.6\Include\um; C:\ Program Files(x86)\ Windows Kits\10\Include\10.0.10586.0 \共有; C:\ Program Files(x86)\ Windows Kits\10\Include\10.0.10586.0\um; C:\ Program Files(x86)\ Windows Kits\10\Include\10.0.10586.0\winrt; $(IncludePath)
これらのパスを追加のlibパスに追加しました。
C:\ Program Files(x86)\ Windows Kits\10\Lib\10.0.10586.0\um\x86; C:\ Program Files(x86)\ Windows Kits\10\Lib\10.0.10586.0\ucrt\x86; $( LibraryPath)