我使用Windows 10作为testing服务器,并尝试从Python和C ++的源代码构build。 我通过choco choco windows包pipe理器安装了vcbuild 2015
当我尝试构build源代码时,发现错误。
E:\downloads\Twisted-17.1.0>cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DWIN32=1 -IC:\Python36\include -IC:\Python36\include /Tcsrc/twisted/test/raiser.c /Fobuild\temp.win-amd64-3.6\Release\src/twisted/test/raiser.obj raiser.c c:\python36\include\pyconfig.h(59): fatal error C1083: Cannot open include file: 'io.h': No such file or directory
我不能在我的vc ++包含path中findio.h:但是根据通道: Universal CRT
我发现io.h文件在我的C:\ Program Files(x86)\ Windows Kits \ 10 \ Include \ 10.0.10240.0 \ ucrt
然后我发现我的通用CRT是空的
C:\WINDOWS\system32>set UniversalCRT_IncludePath Environment variable UniversalCRT_IncludePath not defined
然后我定义了envirnomentvariables:
E:\downloads\Twisted-17.1.0> set UniversalCRT_IncludePath="C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt"
然后我尝试再次编译源代码,但仍然出现错误:
E:\downloads\Twisted-17.1.0>cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DWIN32=1 -IC:\Python36\include -IC:\Python36\include /Tcsrc/twisted/test/raiser.c /Fobuild\temp.win-amd64-3.6\Release\src/twisted/test/raiser.obj raiser.c c:\python36\include\pyconfig.h(59): fatal error C1083: Cannot open include file: 'io.h': No such file or directory
任何人都知道如何使UniversalCRT_IncludePath在命令行环境下工作,cl.exe如何尝试使用该variables并使其包括默认的c ++(包括path)。
UniversalCRT_IncludePath
到cl.exe
没有什么特别之处。
通用CRT的新建项目向导模板使用该名称的MSBuild变量(不同于环境变量或外壳变量)来计算传递给cl.exe
的命令行。
因为你正在手动调用编译器,所以你只需要在该目录中添加一个/I
开关,而不用担心任何编译器无法查找的环境变量。