3

我有一个项目“二十一点”,其中包含一个名为“GameLib”的项目(作为一个孩子),该项目又包含许多项目,例如“Core-iOS”。我已将 libCore-iOS.a 添加到“使用库链接二进制文件”中,但更改静态库中的 .cpp/.mm 文件不会导致可执行文件链接到新的 .a 文件。.a 文件正在与更改一起编译。为什么构建系统损坏了,我该如何修复它?

4

1 回答 1

0

您需要配置所有目标的依赖项。

blackjack
  libCore-iOS.a << dependency

如果 Xcode 的自动依赖检测失败,则将target显式libCore-iOS配置为依赖。然后解决它。

如果您发现自动依赖检测出错,请考虑提交附有项目的错误报告。我在其中发现了错误,但无法(erm.. unwilling)提交项目以供他们调试问题。


要定义显式依赖关系:

  • 在 Xcode 中打开“二十一点”项目
  • 在 Project Navigator (Top-Level) 中选择“blackjack”项目
  • 选择“二十一点”目标
  • 选择“构建阶段”选项卡
  • 在“Target Dependencies”阶段单击“+”,并将 libGameLib 目标添加为依赖项
  • 在“Link Binary With Libraries”阶段单击“+”,并添加 libGameLib
  • 现在在所有方案中禁用“查找隐式依赖项”
  • 重启 Xcode
  • 清理和构建项目

这应该是创建显式依赖项所需的全部内容,除非您对构建设置进行了一些非典型的修改。

于 2012-11-10T01:51:22.813 回答