2010-10-26 51 views
8

在构建iPhone应用程序时,我有更多关于使用Xcode处理库的一般问题。我从一个项目中创建了一个框架,我正在努力在其他应用程序中使用它的某些部分。迄今为止,这很好。但我不知道如何调试到包含在框架中的文件。使用Xcode调试库

我希望能得到某种'最佳实践'。

非常感谢
-f

回答

4

一般来说,我会包含库作为主应用程序的项目的外部项目依赖Xcode项目。项目依赖关系的优点是,您可以添加一个构建阶段,该阶段与主项目一起构建库的全新副本,当然它还可以让您在库的代码中设置断点。

6

关于如何最好地将代码重用到静态库已经有很多讨论。我已经解决了克林特哈里斯描述的方法here(我认为这也是肖恩的建议)。以这种方式创建项目依赖项会自动编译项目目标库(模拟器/设备,调试/发布)的库,因此您不需要四个不同的编译库副本。它也可以让你在调试时进入库源,如你所愿。最后,下次这些项目被编译时,库中的更新将包含在任何链接的项目中(因此,您无需自行重新编译并将库二进制文件重新分发给这些项目)。

+0

嘿Tim!谢谢你的提示。这种整合效果很好。但我仍然无法使用断点来调试我的库。有什么额外的步骤我必须做? – flohei 2010-11-05 10:58:56

+0

我刚刚玩了这个,发现了以下内容:默认情况下,当我在我的库项目中设置断点时,它不会在任何链接的项目中实际中断,如您所观察的那样。然后,我然后右键单击断点,选择“编辑断点”,然后在断点窗口中,将该新断点拖到“组和文件”部分中的链接项目的名称上。或者你可以将它拖到“全局断点”,但是它会在任何链接的项目中断开。一旦我改变了设置断点在链接项目中的作用。这对你有用吗? – 2010-11-09 04:08:50

+0

这可行,但有一个问题:如果您打开了两个项目,则子项目不会在父项目中显示为完整项目。因此在添加它之前关闭子项目。 (XCode抱怨说它会导致数据完整性问题在两个地方打开相同的项目。) – nont 2012-06-05 15:52:20