如何从自定义框架中删除标头?

时间:2011-05-11 05:43:43

标签: xcode macos frameworks mac-frameworks

我有一个使用多个自定义框架的Mac Cocoa应用程序。 (Apple将它们称为私有,它是与您的应用程序一起分发在应用程序包中的框架。)在每个框架内都有一个带有框架头文件的Headers文件夹。在最终的应用程序包中并不需要这些。我想把它们保密。目前,我使用Run Script构建阶段,其中包含以下行:

# Remove all headers from our private frameworks
find "${TARGET_BUILD_DIR}" -name Headers -print0 | xargs -0 rm -rf

这是做到这一点的方式,还是有更好的方法?


关于我的项目结构的更多信息:我在我的主项目中嵌套了三个Xcode项目,这些项目将我的私有框架作为他们的产品。框架被设置为我的主要目标的目标依赖项。设置的最后一部分是复制文件构建阶段,它接受框架并将它们复制到应用程序包内的Frameworks子文件夹中。 (希望这很清楚。)

1 个答案:

答案 0 :(得分:2)

您的框架可能有一个复制标头构建阶段。你可以:

1)删除它,

2)在ide中单独指定标题的可见性,

3)或从复制标题阶段添加/删除它们

我只是将目标设置为构建依赖项,使用:

  • 标题的自定义搜索路径
  • fmwk的复制阶段
  • 没有复制标题阶段

你可以选择不同的方式(例如,只显式构建fmwk,或导出一些标题)。

如果你(最终)没有得到满意的答案,关于你的项目结构的一些更多细节可能有所帮助,因为有很多方法可以配置它。

祝你好运