没有源文件的Xcode静态库(只聚合其他静态库)
Posted
技术标签:
【中文标题】没有源文件的Xcode静态库(只聚合其他静态库)【英文标题】:Xcode static library without source files (only aggregating other static libraries) 【发布时间】:2012-11-19 22:22:23 【问题描述】:有一个包含大量小型静态库的库(Xcode 项目旨在添加为子项目)。用户可以决定使用其中的一些或全部。为了方便决定使用所有这些的用户进行设置,我想创建一个更大的“容器”静态库,其中包含所有较小的静态库。
问题是,添加到新应用后,容器库并没有构建,除非我添加至少一个虚拟源文件。
编译器错误是 ld:找不到 -lContainerLibraryName 的库 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
这个虚拟源文件可能是空的,没有属性,没有方法。有谁知道,为什么静态库需要至少包含一个源文件?否则它不会构建,即使它包含其他静态库。
有没有办法强制静态库构建,即使它不包含任何源文件?
【问题讨论】:
【参考方案1】:您应该尝试将 -all_load 添加到您的构建设置下的“其他链接器标志”中。
【讨论】:
这很快 :) 标志已经到位。所有的静态库都有 -ObjC 和 -all_load 标志。 只检查简单的以上是关于没有源文件的Xcode静态库(只聚合其他静态库)的主要内容,如果未能解决你的问题,请参考以下文章