Swift框架伞标题 - 在框架模块中包含非模块化标头

时间:2016-02-14 13:37:07

标签: ios xcode swift frameworks

我试图将openssl框架包含在我构建的swift框架中(我使用cocoapods创建它 - pod lib create)。当我转到默认的伞头并导入一些头形式的openssl框架时,我得到在框架模块中包含非模块化头文件
我尝试了一切来解决这个问题(来自stackoverflow的已检查问题),包括允许非模块化包含的解决方案。
我在正常的swift项目中使用openssl框架,通过在桥接头中导入它,我没有这样的问题。

1 个答案:

答案 0 :(得分:1)

很长一段时间后,我终于找到了一个对我有用的解决方案。

在框架模块中包含非模块化标头意味着您必须创建要包含模块化的框架。这可以通过创建自定义模块映射来完成,您可以在其中为所需的框架定义新模块。
您可以找到here如何创建自定义模块映射。

需要注意的重要一点是,我只使用动态框架来管理它。其他重要的是你必须在模块图中使用绝对路径(例如 header“/Users/User1/Documents/Project/TestProject/Sample.framework/Headers/sample.h”