iOS - 创建一个依赖于标准框架的静态库

3
我正在为 iOS 6 创建一个静态库,它依赖于内置的 Security 框架,并且在使用过程中遇到了一些问题。当我构建包含 Security 框架的库时,所有内容都按预期构建。然而,当我通过新的 Workspace 项目将我的静态库引入到所在测试应用程序的 Workspace 中并尝试构建包含库的应用程序时,出现了一些构建错误。我已经追踪到这些构建错误是由于测试应用程序未能找到 Security 框架所致。我已将静态库目标添加到我的测试应用程序中,并设置了头文件搜索路径,就像其他库一样,但仍然会出现相同的错误。因此,我的问题是,如果在静态库中包含框架(例如 Security 框架),是否也必须在您要使用该库的应用程序中包含该框架?谢谢大家!另外,我还想补充一点,我已经尝试在我的测试应用程序中包含 Security 框架,错误消失了。所以我知道与该框架没有通过库链接有关。
2个回答

1

Xcode不会自动链接依赖项,因此如果一个项目使用了你的框架,并且你的框架有依赖关系,那么该项目也需要包含这些依赖项。


1

在静态库中不要包含其他库 - 如果两个静态库定义了相同的符号,可能会引起各种问题(如这个谷歌搜索所示 :)

您应该仅在最终应用程序中包含安全框架,并将您的静态库记录为依赖于安全框架。

是的,这有点混乱,如果您要构建大量静态库,则可能存在库依赖框架,但如果只有几个,则这可能是最好的方法。


编辑:在阅读了@ wattson12的答案后,我只涵盖了静态链接的依赖项,而没有框架:(他的答案更适合你的情况。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接