6

我已将 Apple Reachability 文件添加到我的项目中,但我已经收到错误。我什至没有将这些文件添加到我的任何课程中,只是将它们添加到我的项目中。我怎么可能已经收到此错误?

编译时出现以下错误:

ld: duplicate symbol _OBJC_IVAR_$_Reachability.localWiFiRef in /Users/webmaster/Dropbox/iPhone-Development/Official-Projects/PUC/build/PUC.build/Debug-iphonesimulator/PUC.build/Objects-normal/i386/Reachability-B40F6D608A62C635.o and /Users/webmaster/Dropbox/iPhone-Development/Official-Projects/PUC/build/PUC.build/Debug-iphonesimulator/PUC.build/Objects-normal/i386/Reachability-823B59DA9A9B0D23.o
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1

注意:我正在使用 Three20 项目,所以我不确定它是否会以某种方式发生冲突?

4

2 回答 2

8

所以,我想通了。我意识到由于我使用的是ShareKit,它还包括Reachability,所以它在我的项目中出现了两次,我只是没有意识到。

于 2011-02-03T18:41:20.583 回答
0

您需要在 .m 中 #import 自定义类的 .h。否则 #import "Reachability.h" 会发生两次,我猜,在 Reachability.h 中定义了一个名为 localWiFiRef 的变量,现在它被声明了两次,因此出现了“重复符号”错误。

这样做时,您不需要在 .m 中 #import "Reachability.h"。

于 2011-02-03T18:19:38.413 回答