iOS中的链接器错误(架构x86_64的重复符号)

Dan*_*Dan 20 xcode facebook linker-errors ios swift

我继续收到以下错误:

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)
Run Code Online (Sandbox Code Playgroud)

我已经尝试删除FBSDK并重新安装,但这没有用.我还怀疑我将框架桥接到Swift这一事实可能是个问题.我的桥接头包含以下内容:

#ifndef EggCrush_Bridge_h
#define EggCrush_Bridge_h

#import <FBSDKCoreKit/FBSDKCoreKit.h>

#endif
Run Code Online (Sandbox Code Playgroud)

我的AppDelegate.swift文件导入FBSDKCoreKit.
没有其他链接器标志.
我正在运行Xcode 6.3.2并为iOS 8.3构建项目

如何清除此错误?

小智 51

如果没有弄错的话,你使用Facebook刚刚于2015年9月10日发布的sdk,名为FacebookSDKs-iOS-20150910.zip.尝试使用2015年8月13日发布的名为FacebookSDKs-iOS-20150813.zip的 sdk,如果可以,请向Facebook报告重复问题.谢谢.


Ara*_*pan 25

这个帖子解释说你必须在Xcode 7中编译Facebook 4.6.0 SDK来解决这个问题.在Xcode 7中编译后,它对我有用.

在Facebook iOS SDK 4.6.0中,添加了App Thinning(Bitcode)支持,因此无法在低于Xcode 7.0的Xcode版本中进行编译.

  • 这绝对是正确的答案! (3认同)