- 我已经安装了最新的 VS2015 专业版。
- 打开 Visual Studio 命令提示符并运行 vcvars32.bat
- 编写了一个简单的 helloworld.cpp 程序(包括 stdio.h 并打印“hello world”)
- 试过 cl helloworld.cpp
我收到以下错误:
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 工具包\10\include\ 10.0.10240.0 \winrt;
我在这里做错了吗?非常感谢任何帮助。
ps 我的真正目的是构建 boost 1.58 库(但它遇到了与上面相同的问题,所以首先想隔离问题)。
pps 我注意到以下环境变量。但我无法改变它们。
WindowsSDKLibVersion=wdf\
WindowsSDKVersion=wdf\
原文由 Nilay Kothari 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您安装了 WDK(Windows 驱动程序工具包 - 10.0.26639),您将遇到此问题,因为包含路径被 WDK 覆盖。要使其正常工作,您必须卸载 WDK,它应该可以工作。