当代码在 Visual Studio C++ 中正常工作时出现 MSB6006 错误
Posted
技术标签:
【中文标题】当代码在 Visual Studio C++ 中正常工作时出现 MSB6006 错误【英文标题】:MSB6006 error when code used to work fine in visual studio C++ 【发布时间】:2019-10-01 13:48:29 【问题描述】:我收到“MSB6006 "CL.exe" exited with code 2”错误。问题是我的代码过去可以正常工作。当我尝试从 xtensor(xtensor-blas)添加另一个库但我无法让它正常工作时,问题就出现了。我刚刚删除了我尝试添加的所有内容并重新运行,但现在每次都失败了。
在尝试编译错误列表时,会显示“C1083 致命错误:无法打开源文件:'我已删除的文件'”之类的内容。每当我停止构建时,它只会给出 MSB6006 错误。
这变得非常令人沮丧,因为我的代码与以前相同,但现在不起作用。
有没有办法解决这个问题?
【问题讨论】:
C1083 在您的项目文件引用不存在的.cpp
文件时出现。编辑并清理上述项目文件。
项目文件曾经是项目的一部分,然后我将它们删除并从项目中排除了它们的文件夹。代码中没有对这些文件的引用,只是曾经有。
那么引用必须来自某个地方。只需在文本编辑器中打开您的 vcxproj
文件,如果 VS 搞砸了,请手动删除引用。
刚刚找到它,是的,参考文献就在那里。只是擦除它们并保存可能会搞砸吗?
不,MSBuild 并不那么挑剔。反正你有版本控制,不是吗;)
【参考方案1】:
Quentin 给出的答案:Visual Studio 创建的vcxproj
文件中可能仍有引用。删除这些引用,它应该可以工作。
【讨论】:
以上是关于当代码在 Visual Studio C++ 中正常工作时出现 MSB6006 错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在 VIsual Studio 2013 中从 UML 图生成 C++ 代码
如何在 C++ Visual Studio 中使用 alt 代码符号
可以从命令行运行 C++ 代码,但不能从 Visual Studio 中的调试模式运行
为啥我们在 Visual Studio 2013 中引用 C++ 项目?