Xcode 未能发出预编译标头

Xcode 未能发出预编译标头,xcode,google-maps,precompiled-headers,bridging-header,objc-bridging-header,Xcode,Google Maps,Precompiled Headers,Bridging Header,Objc Bridging Header,下午好 我正在尝试将谷歌应用到我的基于地图的项目中。 在这个特定的项目中,我在尝试构建时遇到以下错误 failed to emit precompiled header '/Users/zachwilcox/Library/Developer/Xcode/DerivedData/OddJobs-gbnkfettubuccoheinzfovrqefub/Build/Intermediates.noindex/PrecompiledHeaders/OddJobs-Bridging-Header-

下午好

我正在尝试将谷歌应用到我的基于地图的项目中。 在这个特定的项目中,我在尝试构建时遇到以下错误

  failed to emit precompiled header '/Users/zachwilcox/Library/Developer/Xcode/DerivedData/OddJobs-gbnkfettubuccoheinzfovrqefub/Build/Intermediates.noindex/PrecompiledHeaders/OddJobs-Bridging-Header-swift_3WGH9SNI96Z2-clang_16JN3VASQHE4C.pch' for bridging header '/Users/zachwilcox/Desktop/OddJobs/OddJobs-Bridging-Header.h'

还有一个后续报道说

  'Google-Maps-iOS-Utils/GMUHeatmapTileLayer.h' file not found

我不确定为什么会发生这种情况,因为我创建了一个全新的项目,并执行了相同的实现,它工作得非常完美。但是当我在我现有的项目上运行它时,我得到了这两个错误

我研究这个问题已经有一段时间了,我不知道问题出在哪里。我将桥接头设置为.h文件


我已经尝试了很多个人试图给出答案的步骤,但由于某些原因,这些步骤对我的项目不起作用。先谢谢你。在阅读谷歌安装指南时,它说我只需要添加一个桥接头文件,即下图所示的代码。在研究它的时候,我发现我也需要添加一个.m文件,但是当我这样做的时候,仍然会遇到同样的错误。同样,在我的虚拟项目中,我没有.m文件,只有您在下面看到的所有内容和编译的所有内容。

如果您的项目包括pod,那么您也必须为测试项目设置pod配置

在文件检查器->项目名称->信息->配置中选择根项目
为测试项目设置与主项目相同的配置

对于所选方案,您可能已关闭“查找隐式依赖项”。如果您已更新/安装POD并尝试构建项目,则如果对所选方案取消选中此选项,则更可能失败

来自苹果公司的文件:

并行化构建–此选项允许Xcode通过构建互不依赖的目标来加快总构建时间。这对于具有许多较小依赖项的项目来说是一种节省时间的方法,这些依赖项可以轻松并行运行

查找隐式依赖项–这是一个非常强大的选项,它允许Xcode解析需要构建哪些目标才能成功构建方案的主要目标。但是,这确实带来了一些您必须注意的尖锐优势

  • 情况:您将一个库与应用程序目标链接,并创建一个到该库目标的隐式依赖项

  • 场景1:“查找隐式依赖项”已启用

    • 结果:将在构建应用程序目标之前构建库。然后,应用程序目标将链接到库并成功构建
  • 场景2:“查找隐式依赖项”已禁用

    • 结果:在生成应用程序目标之前不会生成库。无法生成应用程序目标

    • 修正:为了确保第二种情况不会发生,您必须将必要的目标添加到目标列表中并正确排序


当我对桥接标题进行注释时,它会运行。这让我觉得它不是搜索路径。在不断研究之后,我终于能够找到答案。我看到在这个网站上发布的答案有很多不同的变体,试图解决这个问题,但我所做的就是遵循这个。我希望其他人也有同样的pr这对他们有帮助。嗨,我遇到了同样的问题。试着在“指南”上单击,但“找不到页面”。你能帮我再次分享指南吗?谢谢