解决VS2022版出现“‘cl‘ 不是内部或外部命令”的问题

在命令行中运行Visual Studio 2022编译器的命令为“cl”,
但在执行的时候,有可能产生错误“‘cl’ 不是内部或外部命令,也不是可运行的程序
或批处理文件。

错误原因是系统的环境变量配置有问题,需要手动修改系统环境变量。
在这里插入图片描述
这里使用两种方法:配置环境变量使用vcvars.bat文件。不过,经实践发现,使用vcvars.bat文件在关闭当前cmd,再重新打开cmd之后,还是会出现 ‘cl’ 不是内部或外部命令,也不是可运行的程序
或批处理文件。
的问题。也就是说,配置环境变量一劳永逸,而使用vcvars.bat文件只是一次性的。我也没有弄懂是为什么,如果有明白原理的朋友可以告诉我,那我将感激不尽!

本文可以解决的问题

  • ‘cl’ 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
  • 由于找不到mspdb100.dll,无法继续执行代码,重新安装程序可能会解决此问题。

方法一、配置环境变量

打开“此电脑”→“属性”→“高级系统设置”,
在这里插入图片描述
在这里插入图片描述
选择“高级”→“环境变量”,
在这里插入图片描述
选择“Path”→“编辑”,
在这里插入图片描述
在本文中,“cl.exe”文件的路径为“D:\Software\Microsoft Visual Studio 10.0\VC\bin”,
在这里插入图片描述
所以,此处添加“D:\Software\Microsoft Visual Studio 10.0\VC\bin”,然后点击“确定
在这里插入图片描述
然后,一直“确定”直到退出为止。
在这里插入图片描述
在这里插入图片描述
此时,我们在“cmd”中输入“cl”,显示“找不到mspdb100.dll”,
在这里插入图片描述
这是由于,“cl.exe”所在的“D:\Software\Microsoft Visual Studio 10.0\VC\bin”文件夹中,没有“mspdb100.dll”,
这个文件存在“D:\Software\Microsoft Visual Studio 10.0\Common7\IDE”中,
我们只需要把“D:\Software\Microsoft Visual Studio 10.0\Common7\IDE”文件夹中的“mspdb100.dll”文件复制一份到“D:\Software\Microsoft Visual Studio 10.0\VC\bin”文件夹中,即可解决这个问题。
在这里插入图片描述
在这里插入图片描述
检测“cl”命令是否可用,如图所示,即可正常使用“cl”了。
在这里插入图片描述
补充:
环境变量分为系统环境变量和用户环境变量。
正常所说的环境变量是指系统环境变量,对所有用户起作用,而用户环境变量只对当前用户起作用,如果此电脑登入了另外个用户账号,那配置之前账号的用户环境变量就对另外个用户账号不起作用。

方法二、使用vcvars32.bat文件

解决这个问题,首先需要找到“vcvars32.bat”文件。
通过安装目录下,通过搜索工具找到该文件的目录,
在这里插入图片描述在这里插入图片描述
本文中,该路径为“D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build”,

使用“win+r”,输入“cmd”,敲击“回车”,打开命令提示符。
进入到该文件路径中,
在这里插入图片描述
输入“vcvars32.bat”文件名,运行该文件。
如果得到如图所示的结果证明成功了。
在这里插入图片描述
输入“cl ?”检测是否成功,
如果如图所示,则已经可以正常使用编译器了。
在这里插入图片描述
并且,笔者发现此数查看环境变量,“Path”选项增加了“D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build”选项。
在这里插入图片描述

补充:
bat文件是dos下的批处理文件。批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下输入批处理文件的名称,或者双击该批处理文件,系统就会调用cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。入侵者常常通过批处理文件的编写来实现多工具的组合入侵、自动入侵及结果提取等功能。
本文中,“vcvars32.bat”文件内容为:

@call “%~dp0vcvarsall.bat” x86 %*

  • 19
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值