将StoreKit添加到我的Xcode 5项目后,我现在看到......
“AST文件格式错误或损坏:子模块中的伞形标题不匹配”
...每当我从StoreKit导入任何标头时。我没有更改这些系统头,清除派生数据和通常的Clean Build Folder修复也不起作用,重启Xcode也没有改变任何东西。
我在Clang来源中看到报告错误,但我不知道为什么。以下是来自http://clang.llvm.org/doxygen/ASTReader_8cpp_source.html的相关Clang代码:
case SUBMODULE_UMBRELLA_HEADER: {
03728 if (First) {
03729 Error("missing submodule metadata record at beginning of block");
03730 return true;
03731 }
03732
03733 if (!CurrentModule)
03734 break;
03735
03736 if (const FileEntry *Umbrella = PP.getFileManager().getFile(Blob)) {
03737 if (!CurrentModule->getUmbrellaHeader())
03738 ModMap.setUmbrellaHeader(CurrentModule, Umbrella);
03739 else if (CurrentModule->getUmbrellaHeader() != Umbrella) {
03740 Error("mismatched umbrella headers in submodule");
03741 return true;
03742 }
03743 }
03744 break;
03745 }
显然我比较了我导入的伞形标题
#import <StoreKit/StoreKit.h>
其他东西,但我无法确定其他东西是什么。
有没有其他人遇到过这个,希望找到解决方法?
答案 0 :(得分:4)
我能够遇到这个问题,遵循上面提到的方向对我来说不起作用。通过执行以下操作,我能够解决此问题:
如何转到Derived Data文件夹?只需右键单击您的产品构建和显示查找器,浏览文件夹层次结构并查找派生数据。
希望这会有所帮助。这似乎是Xcode中的一个错误?但不确定。
答案 1 :(得分:4)
这解决了我:
答案 2 :(得分:3)
在Xcode中,转到Window-&gt; Organizer-&gt; Projects选择您的项目,然后按Derived data旁边的删除按钮。只是做了(并且它有效)信息以下问题:
答案 3 :(得分:-2)
在Project文件夹中,会有几个名为Derived Data和build的文件夹。只需删除这些文件夹即可解决问题。打开XCode后会自动创建这些文件夹。