'cl'未被识别为内部或外部命令
'cl' is not recognized as an internal or external command
下面是我在windows7:中运行"scons"到编译器时的错误消息
-----------------------------------------------------------------------------------
'cl' is not recognized as an internal or external command,
operable program or batch file.
scons: *** [outwindows-x86-MD-unicode-vs2008-relobj-staticsrcfeaturesetsada ptersim-historyAddToChatRoomHistoryVisitor.obj] Error 1
scons: building terminated because of errors.
-----------------------------------------------------------------------------------
我已经添加了环境变量的路径,但仍然遇到了这个问题。
以下是环境变量的PATH信息:
--------------------------------------------------------------------------------------------
PATH=C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv
1.0;C:Program FilesCREDANTShield v7.1;C:Program Files (x86)QuickTimeQTSystem;C:Program Fil
esMicrosoft SQL Server110ToolsBinn;C:Program FilesTortoiseSVNbin;C:Python27;C:cygwin64bin
;C:Python27scons-2.3.1;c:Program Files (x86)Microsoft SQL Server100ToolsBinn;c:Program File
sMicrosoft SQL Server100ToolsBinn;c:Program FilesMicrosoft SQL Server100DTSBinn;C:Progra
m Files (x86)Microsoft Visual Studio 10.0VCbin;C:Python27Scripts;C:Program Files (x86)Microso
ft Visual Studio 10.0VClib;C:Program Files (x86)Microsoft Visual Studio 10.0VCinclude
--------------------------------------------------------------------------------------------
cl.exe可执行文件的位置不在系统PATH环境变量中。
换句话说,cmd.exe命令行处理器被要求运行cl.exe可执行文件,但找不到它。它要么不在PATH中,要么没有安装。
我已经添加了环境变量的路径,但仍然遇到了这个问题。
要对此进行测试,请打开命令提示符并键入:
cl.exe-
SCons具有逻辑,可以通过检查注册表和默认安装位置来查找visual studio安装的位置,并设置visual studio工具所需的路径和其他环境变量。
如果它对您来说失败了,那么您应该生成一个调试日志,并将其粘贴到某个地方供我们查看。
用途:
set SCONS_MSCOMMON_DEBUG=%TEMP%SCONS_MSVS_DEBUG.log
然后从同一个外壳里取出烤饼。日志将在中
%TEMP%\SCONS_MSVS_DEBUG.log
您也可以尝试SCons 2.4.1的最新版本,因为我注意到在更高版本中对MSVS/MSVC进行了一些修复。但理论上2.3.1应该找到Visual Studio 2010.
只需在窗口中搜索cl.exe,并将该路径添加到path变量中,保存即可。在执行cl.exe之前,关闭现有的open命令并重新打开它。希望这能奏效。
我遇到了同样的问题,并从@bdbaddog找到了一种更好的方法来修复它,以从set SCONS_MSCOMMON_DEBUG=%TEMP%SCONS_MSVS_DEBUG.log
获取调试日志SCons似乎找到了cl.exe
00073ms:MSCommon/vc.py:_check_cl_exists_in_vc_dir#588:checking for cl.exe at C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.26.28801binHostx64x64cl.exe:
00073ms:MSCommon/vc.py:_check_cl_exists_in_vc_dir#590:found cl.exe!:
而且scons env env['ENV']['PATH']
有cl.exe
路径,但它没有使用它,所以我只是使用下面的scons路径更新了会话路径,它起到了的作用
os.environ['PATH'] = env['ENV']['PATH']
- 从命令行c++发送文本文件名
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 将函数类成员映射到类本身内部
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- 'cmake'不被识别为内部或外部命令 - 北极星
- exe文件不被识别为内部或外部命令,可操作的程序或批处理文件在C++
- 在应用程序内部调用linux命令行工具
- CPP中的管道内部(AWK)系统命令
- php未被识别为内部或外部命令
- 使用系统命令从 Windows 下的 C 程序内部更改目录
- VS2012:"nmake"未被识别为内部或外部命令
- CImg 错误:"gm.exe"未被识别为内部或外部命令,
- "g++"不被识别为内部或外部命令,MinGW
- "nasm"未被识别为内部或外部命令
- 在windows 7上编译源Qt 4.7.4错误qmake不是内部或外部命令
- 编译 Android 版 Qt:"mingw32-make"不被识别为内部或外部命令
- Cmake未被识别为内部或外部命令.如何使用windows命令提示符检查安装的cmake的版本
- 'cl'未被识别为内部或外部命令
- '.'未被识别为内部或外部命令