xcode构建错误:当我的项目有两个具有相同名称的文件时,重复符号

时间:2012-03-13 08:20:29

标签: iphone ios

我的项目有一个名为“Reachability.h”的文件(它非常受欢迎,很多人都使用它)

今天我在其项目中添加了其他人的框架。 我认为frameword具有相同的文件“Reachability.h”。

所以存在冲突。

是因为C中没有命名空间吗? 如何避免这个问题?

这是日志:

ld: duplicate symbol _OBJC_IVAR_$_Reachability.reachabilityRef in /Volumes/Data/Project/ios/FreeMaster/FreeMaster/src/ThirdParty/Lmmob/LmmobAdWallSDK.framework/LmmobAdWallSDK(Reachability.o) and /Users/lxp/Library/Developer/Xcode/DerivedData/FreeMaster-hdzirfpzangiuqaavvqkrzlccrku/Build/Intermediates/FreeMaster.build/Debug-iphonesimulator/FreeMaster.build/Objects-normal/i386/Reachability.o for architecture i386

非常感谢

2 个答案:

答案 0 :(得分:1)

在项目中维护可达性文件(.h,.m)的单一副本。删除多余的文件。这将解决问题。

如果您想维护一个额外的副本,您可以创建一个新组并将可达性文件移动到该文件夹​​中,如下面的屏幕截图所示:

enter image description here

在我的查找器中,我的文件放置如下:

enter image description here

答案 1 :(得分:1)

在objective-c中没有nameapce或package类型的东西。

通常,如果您与库中的同一个班级,则可以删除您的班级。在您的代码中使用可达性的地方导入<yourFramework/Reachability.h>