Xcode:LLVM 7.0:禁用警告“模块的Uader标头不包含标头”

时间:2015-07-20 03:28:03

标签: xcode swift llvm compiler-warnings

为了让我的Objective-C框架在我的Swift可可触摸框架中成功链接,我不得不使用this unpretty workaround,这涉及将所有框架头文件作为公共头文件导入到项目中。

我完全不需要将它们全部出现在我的伞形标题中,所以我想以某种方式删除生成的一堆警告。 (“模块'Foo'的Umbrella标题不包含标题”)。我在构建设置中经历了LLVM警告设置,但找不到它。

3 个答案:

答案 0 :(得分:4)

如果您是从“编译Swift源文件”获得此警告▸“预编译桥接标头”构建步骤(也标记为PrecompileSwiftBridgingHeader),请按以下步骤进行抑制:

  1. 找到项目的构建设置。
  2. 搜索“其他Swift标志”。
  3. -Xcc-Wno-incomplete-umbrella添加到“其他Swift标志”(按此顺序)。

Xcode build settings

答案 1 :(得分:3)

警告标记为-Wincomplete-umbrella,因此要禁止,请传递-Wno-incomplete-umbrella

答案 2 :(得分:1)

尝试将标题角色从公共设置为项目,并确保您不会引用自己标头中的任何第三方标头 - 仅来自实施。

任何角色为public的标头都必须导入到伞形标题中。