【发布时间】:2016-01-28 21:01:42
【问题描述】:
我有一个链接到两个静态库的框架。每个静态库都是一个目标,框架是一个目标。框架封装了静态库,框架的客户端只关心调用框架代码(反过来可能调用每个静态库的代码)。是否可以让框架包含所需的头文件和目标文件?当我构建时,我得到了臭名昭著的Include of non-module header inside framework module 错误。每个静态库都导出其标头,我已将标头作为公共标头添加到框架中。仍然没有运气(我认为有一个不需要这个的解决方案)。
【问题讨论】:
-
模块图添加了吗?
-
@azimov 有什么解释吗?我见过它被引用,但从未见过有人说它是必需的。
-
它是不能在框架内使用的桥接头的替代方案,更多细节clang.llvm.org/docs/Modules.html#module-maps。在我的例子中,我创建了一个框架,其中捆绑了几个用于 swift 项目的 C 库。
-
@azimov 我一直在阅读该链接。所以我的想法是我将为我的框架有一个自定义的
modulemap,它为每个静态库声明一个模块并指向标题?另外,我不关心swift。
标签: ios xcode macos static-libraries