visual studio 2015中D8040错误的原因是什么

What is the cause of error D8040 in visual studio 2015?

本文关键字:是什么 错误 D8040 studio 2015 visual      更新时间:2023-10-16

当我用visualstudio2013构建一个项目时,它运行正常。但我在2015年与视觉工作室合作后遇到了以下错误。我该如何解决这个问题?

致命错误C1001:编译器中发生内部错误。命令行错误D8040:创建或与子进程通信时出错

C1001是"ICE",是内部编译器错误。这意味着您的代码在编译器中生成了一个致命的错误。您使用的是VS 2015、VS 2015更新1还是VS 2015更新2?

查找已安装的编译器版本的一种方法是运行VS 2015的开发人员命令提示符,然后运行以下命令:cl -Bv并注意报告的版本。VS 2015更新2为19.00.23918.0

"ICE"总是一个错误。如果代码出错,编译器应该发出错误或警告,而不是崩溃。也有可能你的代码很好,而且自VS2013以来,编译器中引入了一个新的错误。为了完全支持C++11以及支持即将发布的C++14/C++17草案,编译器已经做了很多工作。

您应该在VS Connect上提交一个错误。有关创建一个好的repo的说明,请参阅本文。这篇博客文章也是一篇关于如何缩小编译器问题的精彩文章。

在大多数情况下,只需几行代码就很难重新编写ICE,而且只有在非常特定的情况下才会触发。这就是为什么上面的说明都是关于提供一个捕捉问题本质的最小限度的repo。您也可以尝试一个较新的编译版本,看看问题是否已经解决。

非常感谢Walbourn。你的解决方案非常有效。我在visual studio 2015中通过以下设置解决了这个问题:

1- Disable c/c++->general->Multi-processor compilation
2- Disable c/c++->general->optimization
3- Disable c/c++->language->open mp support

可能的原因可能是项目路径长。