错误MSB6006:“CL.exe”退出,代码为-1073741805

时间:2014-10-20 04:54:44

标签: c++ visual-studio-2010 compiler-errors msbuild visual-c++-2010

在VS 2010中构建C ++应用程序时出现以下编译错误

  

C:\ Program Files(x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ Platforms \ Win32 \ Microsoft.Cpp.Win32.Targets(153,5):错误MSB6006:“CL.exe”退出代码-1073741805。

我知道它与属性设置有关,但我不确定我应该做什么,有人能告诉我应该怎样做才能消除这个错误吗?...提前谢谢。

2 个答案:

答案 0 :(得分:1)

我在查找和报告编译器错误方面有很长的经验。

首先,MSBuild会保留一些文件,其中包含用于调用CL.exe的实际命令行。它还设置环境变量,因此您可能需要查看/ v:d输出以查看要重现的实际步骤。获取CL.exe以生成没有MSBuild的错误。

然后从源文件中删除一些东西,直到你得到一个仍然会破坏编译器的小东西。我删除了从底部开始的东西。我删除了不再需要的#include;扩大剩下的并继续下去。

保存每个"保存"所以当你杀死错误时你可以退出。

然后,用MS记录事件。一旦他们到达正确的部门,然后确定它是编译器错误,他们将退还您的事件。我记得在MSDN订阅中有3个学分;用它来推动它。

答案 1 :(得分:1)

您可能已经导入了与当前构建环境不兼容的属性表。

尝试打开Property Manager并查看是否存在任何自定义属性表。

我刚刚遇到过这个问题,从VS2010转到VS2013,我在那里有一些旧的Windows 8.1 SDK属性表。从命令行构建导致此错误,而在Visual Studio中构建很好。