我一直收到以下错误:
duplicate symbol _llvm.embedded.module in:
/Users/name/Documents/FacebookSDKs-iOS-20150910/FBSDKCoreKit.framework/FBSDKCoreKit(FBSDKApplicationDelegate.o)
/Users/name/Documents/FacebookSDKs-iOS-20150910/FBSDKCoreKit.framework/FBSDKCoreKit(FBSDKServerConfiguration.o)
ld: 102 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我尝试删除FBSDK并重新安装,但这没有用。我还怀疑我将框架桥接到Swift这一事实可能是个问题。我的桥接头包含以下内容:
#ifndef EggCrush_Bridge_h
#define EggCrush_Bridge_h
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#endif
我的AppDelegate.swift文件导入FBSDKCoreKit 没有其他链接器标志 我正在运行Xcode 6.3.2并为iOS 8.3构建项目
如何清除此错误?
答案 0 :(得分:25)
This thread解释说您必须在Xcode 7中编译Facebook 4.6.0 SDK才能解决问题。在Xcode 7中编译后,它对我有用。
在Facebook iOS SDK 4.6.0中,添加了App Thinning(Bitcode)支持,因此无法在低于Xcode 7.0的Xcode版本中进行编译。
答案 1 :(得分:2)
当我有一个重复的符号错误时,我在文本编辑器中打开了我的project.xcodeproj XML文件并搜索了重复的符号。您很可能会发现FacebookSDK在多行中显示相同的&#34; id&#34;属性。确保备份当前项目,并尝试在此文件中手动删除重复项(具有相同ID的项)。保存文件,编译并查看项目是否运行。
您可能想尝试删除一个重复的行,并查看重复的数量(显然您有102 !!)是否先下降。
答案 2 :(得分:2)
答案 3 :(得分:0)
我面临同样的重复符号问题。我正在使用 Xcode 6.4 但后来我升级到 Xcode 7.0 它对我来说很好。如果您使用的是早期版本,我建议您将 Xcode升级到7.0 。