VC ++ 2010 - 向解决方案中的单个项目添加配置无法构建

时间:2014-01-29 09:43:21

标签: visual-studio-2010 visual-c++ projects-and-solutions

我有以下情况:

我有一个包含~20个C ++项目的解决方案。大多数是静态库,一些是DLL和一些可执行文件。 该解决方案有两个配置 - Debug和Release,以及两个平台 - Win32和x64。 一直以来都很好。

现在我想为特定的静态库(lib_core)提供两种不同的行为--X和Y.所以我在这个库代码中添加了一些带有宏#ifdef的{​​{1}}。 我基于“Release”创建了一个新的解决方案配置“Release_X”,并将“Release”重命名为“Release_Y”。

然后,我对lib_core的项目配置执行了相同的操作,将相关的项目配置分配给相同的解决方案配置,并将宏USE_X添加到Release_X项目配置中。

所有其他项目(其中一些甚至不是我的,所以我无论如何都无法改变它们)保留了Release和Debug配置。

现在,当我尝试构建项目时(以及清理/重建,以防万一) - lib_core无法构建:

USE_X

这里有什么问题?

我该如何做到这一点?

4 个答案:

答案 0 :(得分:3)

显然,我需要做的就是卸载项目并重新加载,一切都开始正常。我想关闭和重新开启VS会以同样的方式运作。

当我将MSBuild输出更改为诊断模式时,我看到项目的配置被定义为“Release”。在卸载和重装后,它就完成了。

答案 1 :(得分:0)

右键单击您的项目并选择“属性”,然后单击“配置管理器”按钮。

您应该能够为每个解决方案配置和平台指定lib_core项目的“配置”。

我在构建Debug的解决方案时,成功地使用它来使VS在Release模式下构建一个项目。

答案 2 :(得分:0)

由于项目设置文件中“ProjectConfiguration Include”和“Configuration”之间的区别,我遇到了同样的错误。 尝试使用Visual Studio项目设置检查“.vcxproj”文件。

错误文字:

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.Cpp.Platform.targets(61,5): error MSB8013: This project doesn't contain the Configuration and Platform combination of Debug static library|Win32.

包含错误的文件项目设置示例:

<ProjectConfiguration Include="Debug static library test|Win32">
  <Configuration>Debug static library</Configuration>
  <Platform>Win32</Platform>
</ProjectConfiguration>

项目设置无错误的文件示例:

<ProjectConfiguration Include="Debug static library|Win32">
  <Configuration>Debug static library</Configuration>
  <Platform>Win32</Platform>
</ProjectConfiguration>

答案 3 :(得分:0)

如果项目在Common Properties-&gt;下有任何引用。框架和参考,请删除它并再次添加。这对我有用。