致命错误:格式错误或损坏的 AST 文件 - Xcode
Posted
技术标签:
【中文标题】致命错误:格式错误或损坏的 AST 文件 - Xcode【英文标题】:fatal error: malformed or corrupted AST file - Xcode 【发布时间】:2014-01-07 23:29:29 【问题描述】:在最新版本的 Xcode 中构建我的应用时出现此错误:
致命错误:格式错误或损坏的 AST 文件:'无法加载模块 “/Users/me/Library/Developer/Xcode/DerivedData/ModuleCache/XYZYIE6ZV0OP/Darwin.pcm”: 文件未找到'注:修改系统头文件后,请删除 模块缓存在 '/Users/me/Library/Developer/Xcode/DerivedData/ModuleCache/XYZYIE6ZV0OP' 产生 1 个错误。
当我导航到:
/Users/me/Library/Developer/Xcode/DerivedData/ModuleCache
我可以看到目录“XYZYIE6ZV0OP”不存在。
有人知道我该如何解决这个问题吗?我无法按照错误消息第二部分的建议删除该目录中的任何内容,因为该目录不存在!
【问题讨论】:
产品 > 清洁很好,但对我来说这有帮助:***.com/questions/20014235/… 【参考方案1】:有同样的问题。清除派生数据文件夹为我解决了这个问题。在 Xcode 中,转到 Window->Organizer->Projects,选择您的项目,然后按“Derived data”旁边的“Delete...”按钮。
如果这不起作用,您可以尝试做一个 Product->Clean (Cmd
+Shift
+k
)。
【讨论】:
感谢 devgeek。您的提示有效,但对于遇到此问题的其他人,我还必须执行 Product > Clean after。 也为我工作。非常感谢!不过这里不需要清洁。 对我来说,我只需要打扫 谢谢,这工作。但是你能解释一下这一切是怎么回事吗?我想知道为什么会发生某些事情,什么时候发生。第二天打开我的项目时,我突然遇到了这个错误。 清理构建文件夹也可以解决问题。 (项目>按选项并选择干净的构建文件夹)【参考方案2】:按 Command + shift + k 或清理项目,然后运行项目...
【讨论】:
在导航到“产品”时按 Alt 键将为您提供“清理构建文件夹” - 为我解决了。【参考方案3】:在 Xcode 中选择 Product-->Clean 问题将得到解决
【讨论】:
【参考方案4】:默认情况下,Library 文件夹在 Mac 中是隐藏的。导航到该文件夹的最佳方法是:
-
打开查找器
从菜单中选择前往 -> 选择“前往文件夹”
输入:/Users/“您的用户名”/Library/Developer/xcode
这将打开隐藏库文件夹中的直接 xcode 文件夹。
-
选择“DerivedData”文件夹
Command + A,全选并删除。
打开模拟器并“重置内容和设置”。
现在再次运行 XCode,一切都会解决。
【讨论】:
【参考方案5】:我遇到了同样的问题,通过清理项目解决了。
Product-> Clean
或按
command+shift+K
【讨论】:
【参考方案6】:就我而言,我不小心修改了 NSURLConnection.h。 Xcode 抱怨路径缓存
/var/folders/p6/fk2rmf017sn2d_gds6dtqr6hrst8b2/C/com.apple.DeveloperTools/5.0.2-5A3005/Xcode/5.0.2-5A3005/Xcode/ModuleCache/XWWWZ5ED888F
我终于找到了修复它的步骤:
-
退出 Xcode
删除上面的“5.0.2-5A3005”在
/var/folders/p6/fk2rmf017sn2d_gds6dtqr6hrst8b2/C/com.apple.DeveloperTools/5.0.2-5A3005
当 Xcode 重新启动时,它会重新生成该文件夹以及其中的所有内容。
【讨论】:
【参考方案7】:自从安装了最新的 SDK 后,我遇到了同样的问题。
我的解决方案是删除派生数据并清理项目。
【讨论】:
【参考方案8】:我在执行与 Xcode.app (Xcode 5) 共存的 Xcode6-beta5.app 的 xcodebuild 命令时遇到同样的错误。
在这种情况下,我添加了 -derivedDataPath
以将 ModuleCache 与默认 Xcode.app 分开。
xcodebuild -derivedDataPath ./build/Xcode6-beta5/DerivedData ....
这对我有用。
【讨论】:
【参考方案9】:我尝试多次删除派生数据和清理项目,但均无效。我警告中的文件是我已经从 Project Navigator 和所有构建设置中删除的旧文件。但它不断出现并给我这个错误。该错误仅发生在模拟器上,而不发生在设备上。这真的很奇怪。 :/
出于某种原因,我将分支切换到其他分支并切换回,它又可以工作了。如果有人知道它是如何工作的,请告诉我:D
【讨论】:
【参考方案10】:只需清理删除派生数据和构建文件夹。问题一定会解决的。
【讨论】:
【参考方案11】:就我而言,SSD 坏了。 您可以使用apples Disk Utility验证磁盘
【讨论】:
【参考方案12】:就我而言,我的 plist 文件名中有一个空格。
我删除了它,并在目标构建设置中更改了 Info.plist 文件键
【讨论】:
【参考方案13】:刷新 Safari 浏览器,向下滚动页面,您将看到“单击 + 按钮添加构建...”然后添加实际构建,单击保存并“等待审核”
【讨论】:
【参考方案14】:清理项目并删除驱动器数据并没有为我解决问题。但最终解决的问题是更改了我使用的模拟器模型。
所以首先做一个清理,然后如果你在 iPhone 5 模拟器上运行它,在 iPhone 5s 模拟器上运行它来解决这个问题。基本上,在您正在运行的模拟器之外的任何其他模拟器上运行它。
(感谢 Hlung 的回答,我希望这个更清楚一点)
【讨论】:
【参考方案15】:如果您将项目方案设置为“等待启动可执行文件”,则可能会发生此错误。
在这种情况下,只需从 Product > Scheme > Edit Scheme 更改您的方案...
【讨论】:
【参考方案16】:在我的例子中,我尝试在一个项目中归档应用程序在 xcodeworkspace 内
关闭 Xcode,打开单个目标项目,然后清理 然后,我进行归档,它会生成一个 ios App 归档。
我希望我能帮助别人。
【讨论】:
【参考方案17】:首次尝试构建第三方应用时遇到此错误。添加 foundation
作为库为我解决了这个问题。
【讨论】:
【参考方案18】:我做了清理缓存,删除派生数据,手动删除从错误日志中找到的模块缓存文件夹,重新启动 xcode,重新启动机器。 但他们都没有帮助我。
但是这些步骤可以帮助我解决问题
注释掉 [Name]-Prefix.pch 文件中的所有 #import 行。 构建,正如预期的那样,它指向不同的错误。 还原我在 [Name]-Prefix.pch 中所做的更改并构建,编译成功。This解决方案帮我解决问题。
【讨论】:
【参考方案19】:如果您找不到“派生数据”
-
文件 -> 工作区设置
点击路径旁边的箭头图标
删除“派生数据”文件夹
【讨论】:
【参考方案20】:尝试重新安装 XCode,但没有解决问题,还创建了一个新的本地用户帐户并得到相同的错误,所以最后我放弃并恢复到几天前的时间机器备份......似乎再次好起来……暂时!
【讨论】:
这为 OP 提供了什么解决方案? @Rambatino,好吧.. 没有答案,但至少他告诉人们不要重新安装 xcode。 @mihai,公平地说,如果你不想在使用 Xcode 时遇到致命错误,卸载会解决这个问题^^ @Rambatino,你是对的,但是对于这个问题,重新安装是多余的,并且不能解决问题,所以它对答案有点帮助。这个答案应该是一条评论,而不是说明,重新安装 XCode 并不能解决它。”以上是关于致命错误:格式错误或损坏的 AST 文件 - Xcode的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 5 错误:“格式错误或损坏的 AST 文件:子模块中的伞头不匹配”
C MySQL错误“致命错误LNK1107:无效或损坏的文件:无法在0x368读取”
致命错误LNK1107:文件无效或损坏:无法读取0x21E00D
使用 Git 时如何解决“错误:错误索引 – 致命:索引文件损坏”