使用Cocoapods重复符号iOS

时间:2015-04-02 08:53:01

标签: ios xcode compilation cocoapods

我想要编译我的应用时出现问题

duplicate symbol _OBJC_METACLASS_$_PodsDummy_Pods_silkke in:
/Users/peltie_j/Library/Developer/Xcode/DerivedData/silkke-gubgeyzrbcwqglexienpzvasdvwk/Build/Products/Debug-iphoneos/libPods-Silkke.a(Pods-silkke-dummy.o)
/Users/peltie_j/Library/Developer/Xcode/DerivedData/silkke-gubgeyzrbcwqglexienpzvasdvwk/Build/Products/Debug-iphoneos/libPods-silkke.a(Pods-silkke-dummy.o)

duplicate symbol _OBJC_CLASS_$_PodsDummy_Pods_silkke in:
/Users/peltie_j/Library/Developer/Xcode/DerivedData/silkke-gubgeyzrbcwqglexienpzvasdvwk/Build/Products/Debug-iphoneos/libPods-Silkke.a(Pods-silkke-dummy.o)
/Users/peltie_j/Library/Developer/Xcode/DerivedData/silkke-gubgeyzrbcwqglexienpzvasdvwk/Build/Products/Debug-iphoneos/libPods-silkke.a(Pods-silkke-dummy.o)

ld: 2 duplicate symbols for architecture armv7

clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

我不明白为什么,所以如果你有任何想法,谢谢你的提前!

2 个答案:

答案 0 :(得分:3)

这基本上意味着您在构建中将PodsDummy_Pods_silkke作为依赖项添加了两次,因此它为它构建了两个二进制文件(libPods-Silkke.a)。可能是因为以下任何原因:

  • 您的podfile上的错误(例如,您在主目标和测试目标中包含相同的pod)。
  • 您将依赖项同时添加为pod和手动(例如,如果您曾经将库作为代码导入到项目中,现在您正在转移到Cocoapods,但是您忘记删除手动导入的副本)。
  • 发生了其他非常糟糕的事情,可能需要您清理pods文件夹,重新安装它们(pod install),重新打开Xcode工作区,从Xcode(Cmd + K)清除构建并尝试构建试。

答案 1 :(得分:0)

当您在项目中多次添加相同文件/ s的引用时,通常会发生这种情况。 我建议搜索文件" PodsDummy_Pods"在“显示和查找导航器”中,如果添加了两次,则删除引用。