我有一个大型iOS项目,由20-30个静态库组成,这些库链接在一起形成最终的可执行文件。其中一些组件是平台无关的(纯C ++),而另一些组件是iOS特定的(Obj-C / Obj-C ++)。C ++模板被广泛使用,因此每个对象文件包含许多具有模糊连接的符号。问题在于,这些符号仅在链接最终可执行文件时合并,而不是在制作静态库时合并。每个库都包含大量重复的符号(6-60个克隆)。因此,应用程序的最终链接需要几分钟时间。在调试和进行一些小更改时,这变得非常烦人。
有没有一种方法可以为每个库执行模糊连接符号的合并?
我知道,在使用动态库时,这是自动完成的。通过一些黑客技巧(http://sumgroup.wikispaces.com/iPhone_Dynamic_Library),可以为iOS构建动态库。有没有一种方法将dylib静态链接(将它们链接到单个可执行文件中)?
当然,能够调试生成的应用程序是必须的。
有没有一种方法可以为每个库执行模糊连接符号的合并?
我知道,在使用动态库时,这是自动完成的。通过一些黑客技巧(http://sumgroup.wikispaces.com/iPhone_Dynamic_Library),可以为iOS构建动态库。有没有一种方法将dylib静态链接(将它们链接到单个可执行文件中)?
当然,能够调试生成的应用程序是必须的。