10
duplicate symbol _OBJC_METACLASS_$_SBJsonParser in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonParser.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonParser.o)
duplicate symbol _OBJC_CLASS_$_SBJsonParser in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonParser.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonParser.o)
duplicate symbol _OBJC_IVAR_$_SBJsonWriter.sortKeys in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonWriter.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonWriter.o)
duplicate symbol _OBJC_IVAR_$_SBJsonWriter.humanReadable in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonWriter.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonWriter.o)
duplicate symbol _OBJC_METACLASS_$_SBJsonWriter in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonWriter.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonWriter.o)
duplicate symbol _OBJC_CLASS_$_SBJsonWriter in:
    /Users/Gaditek/Library/Developer/Xcode/DerivedData/DietBet-gyhoyhmdrobtqregldjyixtgmize/Build/Intermediates/DietBet.build/Debug-iphonesimulator/DietBet.build/Objects-normal/i386/SBJsonWriter.o
    /Users/Gaditek/Desktop/AliMaisamProjects/Dietbet/DietBet/libfacebook_ios_sdk.a(SBJsonWriter.o)
ld: 6 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

请告诉我如何解决这个问题?

4

9 回答 9

21

如您所见,链接器抱怨SBJsonWriterSBJsonParser在 libfacebook_ios_sdk.a 和项目中定义为单个文件。

除了从目标中删除单个文件之外,您无法真正解决问题。

问题是 libfacebook_ios_sdk.a 的开发人员认为使用 json 框架是个好主意(不关心与主机应用程序中使用的代码冲突)。这是 iOS 上 SDK 的常见问题。

于 2013-03-20T10:58:11.983 回答
11

我已经解决了问题,请按照步骤操作。

  1. 转到应用程序的目标
  2. 编译源
  3. 使用 (-) 删除重复文件。在此处输入图像描述
于 2014-05-15T06:54:13.697 回答
10

问题很可能是由于包含标题时的拼写错误。检查以确保包含头文件 (.h) 而不是实现文件 (.m)。

这对我来说是个问题

于 2013-11-14T07:18:48.643 回答
7

如果没有其他方法,通常会有所帮助的是使用文本编辑器打开您的 .pbxcodeproj 文件,然后使用 grep 查找 Xcode 中的失败日志中出现的类的名称。可能有两条重复的行 - 删除其中一条。

于 2013-06-27T02:12:57.327 回答
2

您必须在项目中添加了两次 SBJsonParser.h/.m。

于 2013-03-20T10:35:48.387 回答
0

似乎您可能两次包含一些 .h/.m 文件,例如两次包含一些第三方 API/库,或者您创建了一些名称与项目中已有文件完全相同的新文件。检查您的项目文件夹中是否有任何重复的文件。

于 2013-03-20T10:48:53.160 回答
0

如果您两次导入任何 .h 文件,就会发生这种情况。

例如,如果您同时导入任何 .h 文件 ....ViewController.h 和 ....ViewController.m 文件,它就会发生。

于 2014-06-16T20:55:36.527 回答
0

您还可以:

  1. 复制.h冲突文件pods
  2. pods从中删除这些冲突podfile
  3. 将这些.h文件复制到项目中。
  4. 将复制的文件重命名为#import </.h>to 。".h".h
  5. 制作pod install和建造。

诀窍是您的代码没有错误,因为.h文件已导入,但.o文件链接正确。

于 2014-05-02T21:23:05.830 回答
0

如果以上都不能解决您的问题,请检查您是否在两个不同的文件中声明了一个常量(我的意思是检查您是否有两个相同的(.h &.m)文件。重复文件不应该存在于您的项目中。

于 2015-10-30T07:23:04.877 回答