为类重复接口声明



我有一个有多个目标的项目。以及一个嵌入式项目,其输出是一个框架。
其中一个目标只需要几个文件{.h,。M}的框架,所以…我只是引用它们。现在,当我构建那个特定的目标时,我得到了这个错误:

在文件包含从/Users/../someeclass。m:10: Foo.h:11:1: error:
类'Foo'的重复接口定义
@interface Foo: NSObject {
^
/用户/…/MyProject DerivedData/MyProject/构建/产品/调试/MyFramework.framework/头/foo:数:

注意:前面的定义在这里
@interface Foo: NSObject {
^

我看到的是:Xcode找到Foo类的两个副本,一个是引用的一个,另一个是包含在MyFramework中。(两个副本是同一个文件)。
问题是,这个目标没有构建,链接或做任何与MyFramework有关的事情。(又名。对于我的目标:0目标依赖,Foo。. m包含在'compile sources'中,而MyFramework没有列在'link binary with libraries'中)。

问题:1. 我如何构建我的目标没有链接我的框架?

谢谢!


供参考。我用的是Xcode 4.6.3
该框架是C、c++和ObjC的混合体。-编译为objc++并启用ARC。
我有问题的目标是C和ObjC 没有 ARC。

添加include保护。在这里看到的:c++ #include卫兵

如果你已经有了include保护,请仔细检查#ifndef和#define是否匹配

最新更新