我正在尝试编写一个Swift框架,它包含并公开一个带有一些已添加类的已编译库。
我的项目正确输出框架:
MyFramework
|_ Frameworks/
|_ compiled.a
|
|_ Headers/
|_ *.h
但由于未定义的符号错误,我似乎无法访问应用程序中compiled.a
中的任何类。如果我将compiled.a
拖放到我的项目本身并将其添加到“使用二进制文件链接”构建阶段,我的框架和我的应用程序代码都可以正常工作,但复制compiled.a
需要很长时间捆绑每次。
是否可以将我的应用程序链接到我的动态框架中包含的框架,将库暴露给它们?
答案 0 :(得分:1)
解决方案是预先链接您的库,然后添加链接器标志。
您可以设置" Prelink Libraries"选项"构建设置"阅读:
$(CONFIGURATION_BUILD_DIR)/path/to/libFramework.a
用于" Debug"和"发布"生成。
然后,你只需要在"其他链接标志"中添加一个标志:
-lFramework
问题解决了。