链接并将已编译的.a暴露给Swift框架?

时间:2015-04-17 14:16:18

标签: ios xcode ios-frameworks

我正在尝试编写一个Swift框架,它包含并公开一个带有一些已添加类的已编译库。

我的项目正确输出框架:

    MyFramework
      |_ Frameworks/
         |_ compiled.a
      |
      |_ Headers/
         |_ *.h

但由于未定义的符号错误,我似乎无法访问应用程序中compiled.a中的任何类。如果我将compiled.a拖放到我的项目本身并将其添加到“使用二进制文件链接”构建阶段,我的框架和我的应用程序代码都可以正常工作,但复制compiled.a需要很长时间捆绑每次。

是否可以将我的应用程序链接到我的动态框架中包含的框架,将库暴露给它们?

1 个答案:

答案 0 :(得分:1)

解决方案是预先链接您的库,然后添加链接器标志。

您可以设置" Prelink Libraries"选项"构建设置"阅读:

$(CONFIGURATION_BUILD_DIR)/path/to/libFramework.a

用于" Debug"和"发布"生成。

然后,你只需要在"其他链接标志"中添加一个标志:

-lFramework

问题解决了。