引用“X”是不明确的

经过几次改变我的项目,我突然得到构build错误:

Reference to 'kCGImageAlphaPremultipliedLast' is ambiguous

参考是不明确的 当看看这个错误时,它显示了它被引用了4次

在这里输入图像说明

有人可以告诉我怎么会发生这种情况,我怎么知道是什么原因造成的? 我没有明确的从CoreGraphics中导入任何东西,我的Prefix文件只导入了'Foundation.h'和一些自制的macros。 然而,我导入了几个包含纯c代码的头文件,但它们都被封装在这样的东西里:

 #ifndef __MYCCODE_H #define __MYCCODE_H // imports here // c code here #endif 

这发生在使用LLVM 5.1的xcode 5中

编辑:这个项目似乎是一个不同的问题。 在评论这行代码后,我得到另一个错误:

 Malformed or corrupted AST file: 'Unable to load module "/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache/1NHZ5MC2OSMJV/CoreImage.pcm": module file out of date' 

删除模块,并再次添加没有帮助。 删除派生的数据也没有帮助。 返回到工作提交时也会出现此错误

确定后,创build一个新的项目和应对一切到这个项目的构build是成功的,但是我得到了这个“格式错误或损坏的AST文件”错误几次,但它可以通过解决:

  • 清理项目
  • 删除'〜/ Library / Developer / Xcode / DerivedData / ModuleCache /'中的所有内容(组织者窗口中的button不适用于我)
  • 再次清洁
  • build立项目

之后,它工作得很好,除了我必须不时地做这个修复

我也做了一个比较旧的项目,似乎很多框架和其他旧东西卡在那里从testing的东西,所以万一你有这个检查你的项目设置文件的旧东西。

我认为有一天xcode和我可以成为朋友。 可能不会…

当我导入了一个头文件两次时,我遇到了这个问题。 其中一个被删除后,问题消失。

这也许是你这样导入的:

#import“xxxx.h”

我通过这个解决它:

#import <xxxx / xxxx.h>

对于仍在努力解决问题的人来说,所提出的解决scheme中的非解决scheme都适用于我的情况。 我正在使用迦太基编译我的所有框架,并在我的主项目中得到这些错误,只要我导入一个框架的头,使用我的主要项目也使用的框架。 最终解决的是在主项目上禁用“模块”。 在这里输入图像说明

那么这里的一些解决scheme是好的,但use_frameworks! 正是我现在所需要的,即使你让这个问题发生。 但是,看起来像构build不喜欢当我使用框架和头被引用两次这样的

 #import "TSMessage.h" #import "TSMessage+CSExtension.h" 

但编译时会出现问题

 #import "TSMessage+CSExtension.h" 

删除use_frameworks! 从pod文件修复我的模糊问题。

使用

 #import "anyviewcontroller.h" 

而不是任何模块

 @import anymodule; 

我正在使用LGSideMenuController,当我第一次整合它,它运作良好,但我不知道为什么我得到这个错误一段时间后。

所以我换了模块@import LGSideMenuController; 进入头文件像这样#import "UIViewController+LGSideMenuController.h"

错误消失。