从 Xcode 项目中删除 Prefix.pch 文件可以吗?
Posted
技术标签:
【中文标题】从 Xcode 项目中删除 Prefix.pch 文件可以吗?【英文标题】:Is it OK to remove Prefix.pch file from the Xcode project? 【发布时间】:2011-01-18 19:36:15 【问题描述】:Xcode 项目会自动生成 Prefix.pch 文件。当我删除此文件并尝试构建时,我收到构建错误,提示“*_Prefix.pch”文件丢失。
Prefix.pch 文件是 Xcode 编译必须的吗? 如何在没有 Prefix.pch 文件的情况下构建?【问题讨论】:
你为什么要删除它? 类似问题,很高兴有人问——我正在将 Xcode 项目检查到 TFS 中,并且 TFS 建议我排除 .PCH 文件(类型为“预编译头文件”)。 -- 听起来 Xcode 不够聪明,如果这个文件丢失了就重新编译头文件,所以我现在将它包含进来。 【参考方案1】:在 Xcode 中,转到目标的构建设置(Command-Option-E,构建选项卡)并取消选中 Precompile Prefix Header (GCC_PRECOMPILE_PREFIX_HEADER)。如果您愿意,还可以删除 Prefix Header 设置的值。
前缀头被编译并存储在缓存中,然后在编译期间自动包含在每个文件中。这可以加快编译速度,并允许您包含一个文件,而无需向使用它的每个文件添加导入语句。它们不是必需的,而且在您更改它们时实际上会降低编译速度。
【讨论】:
引用 Xcode 本身的建议:“注意:如果前缀头或它包含的任何文件的内容很少更改,则预编译前缀头将是最有效的。如果前缀头的内容或它包含的任何文件经常更改,可能会对整体构建时间产生负面影响。”我建议您保留 .pch 文件,并为您使用的框架添加导入指令。你几乎永远不会改变它,所以它几乎总是会加快速度。【参考方案2】:是的,您可以在没有 .pch 文件的情况下编译和运行项目。在 Xcode 中,转到目标的构建设置(Command-Option-E,构建选项卡)并取消选中 Precompile Prefix Header (GCC_PRECOMPILE_PREFIX_HEADER)。如果需要,您还可以删除 Prefix Header 设置的值。
【讨论】:
以上是关于从 Xcode 项目中删除 Prefix.pch 文件可以吗?的主要内容,如果未能解决你的问题,请参考以下文章