Xcode - 重复目标 - 新目标无法构建

时间:2010-12-28 03:51:41

标签: xcode duplicates target

在10.6.6(10J521)和现在的10J537上使用Xcode 3.2.5。

我有一个包含1个目标的Xcode项目:“MyApp”。它构建并成功运行。

除了源文件和资源文件之外,Target还包含一个“复制文件”构建阶段,该阶段复制“Sparkle.framework”。框架与项目位于同一目录中。

我想要复制此目标。采取的步骤:

  • “清理所有目标”。

  • 右键点击Xcode中的“MyApp”目标,然后选择“复制”。

  • 将重复的目标重命名为“MyAppTarget2”。

  • 从左上角的弹出菜单中选择“MyAppTarget2”作为Active Target。

  • “Build”。

问题:

error: Sparkle/Sparkle.h: No such file or directory

在这一行:

#import <Sparkle/Sparkle.h>  // In MyAppDelegate.mm

这令人费解!更多信息:

  • 每个构建步骤似乎都已复制到重复的目标中,包括“复制文件”阶段。

  • Sparkle.framework本身存在于项目的文件夹中。

  • 在“MyApp”和“MyAppTarget2”的“Link Binaries with Library”阶段,我将链接到上述位置的Sparkle.framework。链接二进制文件的“获取信息”报告它是两个目标的成员。

  • 如果我右键单击复制目标的“复制文件”构建阶段中的Sparkle.framework文件,并选择“在Finder中显示”,则会显示正确的Sparkle.framework文件。所需文件存在于Sparkle.framework / Headers / Sparkle.h

  • 如果我切换回原来的“MyApp”目标,它会构建并成功运行。

我在做一些明显错误的事吗?感谢。

[编辑 - 已解决]

2 个答案:

答案 0 :(得分:14)

我看了每个所谓的相同目标的构建设置。

在“框架搜索路径”下,第一个目标有:

$(继承)“$(SRCROOT)”

但重复的目标有这条道路:

$(继承)\“$(SRCROOT)\”

在复制过程中,Xcode似乎错误地转义了路径。哎哟。

答案 1 :(得分:0)

我知道你自己已经解决了这个问题,但我想我会分享我对这个问题的解决方法(因为它已经发生在我身上好几次了)。我总是能够通过删除有问题的文件并重新创建它来摆脱这个错误。我不知道为什么会这样......但是,正如XCode的情况一样,似乎有一些伏都教在起作用。