为什么我的Xcode项目只能在工作区中编译?

时间:2016-04-22 14:56:24

标签: ios xcode xcode-project

我有一个Xcode项目 P2 ,它是工作区的一部分,我有另一个项目 P1

当我构建 P1 时,它会创建一个Cocoa Touch Framework。在 P2 中,我添加了由P1创建的框架 常规 - >链接框架和库 - >选择P1.framework。

然后我构建 P2 项目,并成功编译,其中集成了 P1.framework 。所以,这一切都很好。

现在,我不是打开工作区并从工作区构建 P2 项目,而是通过单击p2.xcodeproj文件直接打开 P2 项目。我可以看到其中的p1.framework文件。

但是,现在当我尝试构建 P2 时,它会出错:

  

框架未找到P1。 clang:错误:链接器命令失败   使用退出代码1(使用-v查看调用)。

任何人都可以帮助我理解为什么 P2 在从p2.xcodeproj文件直接打开时会出错?

1 个答案:

答案 0 :(得分:2)

要使 If oInspector.IsWordMail Then With NewMail .Display SendKeys "^+{END}", True SendKeys "{END}", True SendKeys "{NUMLOCK}" End With 可以链接正确引用p1.framework的项目必须可见。

这可能是因为您最初使用标准Xcode UI从工作区中的p1.framework项目中选择p1.framework。 Xcode不直接引用P1,而是通过引用p1.framework项目。这很有用,因为它允许您根据需要修改P1(更改构建目标等),并允许其他项目使用P1

更简单的类比可能是考虑文件夹别名。它就像您通过文件夹别名引用文件,然后删除该文件夹。当然,出现错误。