类和静态库之间的冲突

时间:2011-07-17 15:54:53

标签: iphone conflict reachability layar

我在我的应用中使用了Layar Player 它提供了一个静态库,可以包含在您的项目中 安装并尝试编译后,我收到了这个错误:

  

ld:重复符号_OBJC_CLASS _ $ _可达性   //LayarPlayer/Debug/liblayarplayer.a(Reachability.o)​​和   //MyApp.build/Debug-iphoneos/MyApp.build/Objects-normal/armv7/Reachability.o   对于架构armv7

我在我的应用程序中使用Reachability来检查网络状态,但它似乎已经包含在库中了。
我已尝试删除代码中的每个 #import Reachability ,但很明显我收到了“未声明的功能”错误。
我该如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

您需要删除项目中的引用。这意味着不要删除#import Reachability,而是在项目文件中搜索Reachability.mReachability.h并删除它们,这样您的项目中只有一个。

答案 1 :(得分:0)

我从目标中排除了所有冲突的.m文件,现在一切都很好 不得删除标题文件。

答案 2 :(得分:0)

我通过

解决了同样的问题
  1. 检查您的项目是否删除重复的可访问性文件;
  2. 替换旧版本的Reachability(我目前正在使用2.2版本);
  3. 将-ObjC -all_load链接器标志放在。
  4. 希望它可能会有所帮助。