VS 2012不构建依赖项目

时间:2012-12-14 13:39:15

标签: c++ visual-studio visual-studio-2012

我在Visual Studio 2012(版本11.0.50727.1)中有两个C ++项目。 项目B依赖于项目A,通过项目属性>共同属性>框架和参考

当我在B上进行重建时,项目A的lib不会在输出目录中生成,因此B失败。日志显示A正在成功构建,但lib根本没有显示。

真正奇怪的是,当我做'干净然后构建'而不是'重建'时,一切正常。同样,项目A自身构建良好,并生成 .lib 。不幸的是,我必须使用的构建系统将进行“重建”,如果可能的话,我宁愿不改变它。

我尝试过什么

我删除了框架引用,并尝试在lib中添加lib作为链接器依赖项。在这种情况下,A仍然无法构建,因此我最终缺少引用。

我已经搜索了SO和谷歌一段时间了,但到目前为止还是很短暂。

如果你遇到过类似的事情,请告诉我。

1 个答案:

答案 0 :(得分:1)

看起来问题是A和B共享了一个中间目录。 使两者截然不同似乎已经解决了这个问题。

以下是我对发生的事情的猜测:

  1. A构建正确。
  2. B通过“干净”
  3. 开始建设
  4. 中间目录的内容用于确定哪些文件需要从输出目录中清除,因此A.lib被错误删除
  5. 找不到A.lib
  6. 这在VS的早期版本中有效,因为我们之前没有启用项目的并行构建,因此我假设所有项目都先进行了清理,然后再进行构建。