我已经安装了Visual Studio Community 2017和C++。我想从cmd使用它的编译器。我可以从Developer Command Prompt for VS 2017中使用它,但是我不能从普通cmd使用它。我试过用right click-> run as administrator运行vsvarsall.exe。但什么都没发生。似乎我必须手动设置环境变量。每当我尝试运行命令时
cl hello.c
上面写着hello.c(1): fatal error C1034: stdio.h: no include path set
发布于 2018-06-13 07:04:33
Visual包括一个批处理文件,用于为您准备环境(实际上,开发人员命令提示符将其称为“幕后”)。
我从未尝试过使用Community,但VS 2017专业版位于"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars32.bat"。当然,如果您更改了安装路径,则可能会有所不同。
所以,您所要做的就是调用它:
call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars32.bat"下面的内容应该会出现
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.7.3
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86'之后,您可以在cmd中调用cl、nmake、msbuild。
您也可以调用vcvarsall.bat x86 ( vcvars32.bat只是这方面的一个快捷方式)。
通过创建一个自动调用它的批处理,然后打开命令提示符,您可以避免每次输入它。
call "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars32.bat"
cmd然后运行该批而不是cmd。
另一种选择是将"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\"添加到路径中,这样您只需要在需要开发工具时输入vcvars32.bat。
发布于 2018-06-13 07:07:16
取自msdn
开发人员命令提示符快捷方式会自动为编译器和工具以及任何所需的标头和库设置正确的路径。如果使用常规命令提示符窗口,则必须自己设置这些环境值。有关更多信息,请参见设置命令行生成的路径和环境变量。
通过在普通命令提示符窗口中运行vcvarsall.bat,您可以设置环境变量,以便为本机32位或64位编译配置命令行,或者为x86、x64或ARM处理器进行交叉编译。
运行vcvarsall.bat
C:\Program Files (x86)\Microsoft Visual Studio version\VC\。)例如,输入:
cd "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC"vcvarsall x86命令文件为构建工具、库和头的路径设置所需的环境变量。现在可以使用此命令提示符窗口运行命令行编译器和工具。
如果您希望自己设置包含路径等,请查看https://learn.microsoft.com/nb-no/cpp/build/reference/cl-environment-variables
发布于 2021-09-17 05:24:17
https://stackoverflow.com/questions/50830609
复制相似问题