我现在也有同样的问题,但还没有找到正确的答案。我得到了错误:

    /Users/nle/Library/Developer/Xcode/DerivedData/TestMoboSDK-Client-cgodalyxmwqzynaxfbbewrooymnq/Build/Intermediates/TestMoboSDK-Client.build/Debug-iphonesimulator/TestMoboSDK-Client.build/Objects-normal/x86_64/MoboSDK.o
    /Users/nle/Library/Developer/Xcode/DerivedData/TestMoboSDK-Client-cgodalyxmwqzynaxfbbewrooymnq/Build/Products/Debug-iphonesimulator/libMoboSDK.a(MoboSDK.o)
duplicate symbol _OBJC_METACLASS_$_MoboSDK in:
    /Users/nle/Library/Developer/Xcode/DerivedData/TestMoboSDK-Client-cgodalyxmwqzynaxfbbewrooymnq/Build/Intermediates/TestMoboSDK-Client.build/Debug-iphonesimulator/TestMoboSDK-Client.build/Objects-normal/x86_64/MoboSDK.o
    /Users/nle/Library/Developer/Xcode/DerivedData/TestMoboSDK-Client-cgodalyxmwqzynaxfbbewrooymnq/Build/Products/Debug-iphonesimulator/libMoboSDK.a(MoboSDK.o)
ld: 75 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

任何帮助都是感激的。

最后,我找到了这个错误的原因,因为我添加了-ObjC到其他链接器标志。在删除这个值之后,我可以成功地构建我的项目,但我不知道为什么。有人能解释一下吗?


当前回答

请检查您添加的pod和Libraries。应该有一个或多个库是重复的。请把它从一边移开。我会解决这个问题。受影响的库将在x-code错误消息详细信息中列出。

其他回答

当我在两年前用Objective-C开发的项目中接受“推荐设置”弹出时,我就遇到了这种情况。

问题是当你接受“推荐设置”更新时,Xcode会自动更改或添加一些构建设置,包括GCC_NO_COMMON_BLOCKS = YES;。

这使得构建失败与重复的符号错误在我更新的项目。所以我在我的构建设置中将No Common Block更改为No,错误就消失了。

对我来说,将“无通用块”从“是”更改为“否”(在目标->构建设置->Apple LLVM -代码生成下)解决了这个问题。

在我的例子中,我将我的核心数据模型的实体命名为对象。 我定义了一个对象"Event。h"同时我有了这个实体"Event"我最终重命名了实体。

我在安装alamofires pod后得到了这个错误,但alamafire已经通过xcode的File/Add Packages....作为包安装在我删除了这个包并将其从目标/通用/框架中删除后,错误消失了…

我今天也有这个毛病。这是因为我在.m文件中定义了一个const值。但我定义了另一个.m文件,其中也包含这个const值。这意味着它有两个相同的const值。所以出现了这个错误。 我的解决方案是在const值之前添加一个关键字“static”。如:

static CGFloat const btnConunt = 9;

然后我构建项目,它不会报告这个错误。