3

使用 Windows 7 和 Visual Studio 2010,我使用以下命令行作为大型项目编译的一部分:

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /I"C:\Program Files (x86)\Windows Installer XML v3.5\sdk\inc" /Zi / nologo /W3 /WX- /O 2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D USRDLL /D CUSTOMACTIONTEST EXPORTS /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MT /GS /Gy /fp:精确 /Zc:wchar_t /Zc:forScope /Yc"StdAfx.h" /Fp"obj\Release\FalconViewRegistryCA.p ch" /Fo"obj\Release\" /Fd"obj\Release\vc100. pdb" /Gd /TP /analyze- /errorReport:queue stdafx.cpp

报此错误:

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp .Win32.Targets(57,5): error MSB6006: "CL.exe" exited with code 2.

当我在 IDE 中编译并且 Microsoft.Cpp .Win32.Targets 中的行是条件编译时,我得到了同样的错误:

<CL Condition="'%(ClCompile.PrecompiledHeader)' == 'Create' and '%(ClCompile.ExcludedFromBuild)'!='true'"

我已经搜索了这个问题,并且这个问题的唯一其他问题说这是由于路径问题。 错误 MSB6006:“CL.exe”以代码 2 退出

我已经对 Visual Studio 进行了修复,但仍然出现相同的错误。此版本在 Windows XP 机器上正常工作,当我们升级到 Windows 7 时开始出现错误。任何帮助或澄清将不胜感激

4

2 回答 2

0

如果它对其他人有帮助,我也会收到此错误并找到修复/补丁。

我的条件:

  1. 视觉工作室 2015
  2. 包括定义模板类的文件
  3. 该文件定义了 3 个具有依赖链的模板类:linkedlistnode、linkedlistiterator 和linkedlist
  4. 解决问题后,其中一个类出现构建错误:C2838 '=': 成员声明中的非法限定名
  5. 所有 3 个类都是单独定义和声明的(即有一个包含函数声明的类定义,并且在同一文件的底部定义了函数。)

当我合并类声明和定义时,解决了 MSB6006: “CL.exe” exited with code 2。

于 2016-09-04T15:12:48.000 回答
0

我还发现,如果在 CPP 文件中编译方法体,则编译器会崩溃,但是当将方法体放入头文件时,编译器不会崩溃,并正确报告导致的实际源代码错误问题。在我的情况下,我的类定义有一个错字,该类是它自己的基类。这是 VS2019 的情况,因此 MS VC++ 中仍然存在编译器错误。

于 2020-01-13T00:55:24.020 回答