FBSDKLoginManager:架构x86_64 +链接器命令的未定义符号失败,退出代码为1

时间:2015-04-09 18:42:46

标签: ios xcode facebook-ios-sdk

我刚刚将Facebook iOS SDK升级到v.4.0.1,我收到了这些错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_FBSDKLoginManager", referenced from:
      objc-class-ref in Controller1.o
      objc-class-ref in AppDelegate.o
      objc-class-ref in Controller2.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我已经尝试更改链接器:使用 -all_load 我得到相同的错误,而使用 -force_load 时,它变为" ld:找不到文件: - fobjc弧&#34 ;.任何解决方案?

2 个答案:

答案 0 :(得分:28)

我遇到了同样的问题。如果您要将Facebook登录添加到您的应用程序(我认为您是这样),您还需要将FBSDKLoginKit.framework文件拖到添加的Xcode项目中FBSDKCoreKit.framework file

Facebook的SDK入门页面上的当前说明忘记提及此内容。在版本< SDK的4个,只有一个文件可以拖入你的项目。

答案 1 :(得分:0)

如果您尝试使用cocoapods添加它,只需添加版本即可使用

将pod文件更改为以下内容:

pod 'FBSDKCoreKit', '~> 4.17.0'
pod 'FBSDKLoginKit', '~> 4.17.0'
pod 'FBSDKShareKit', '~> 4.17.0'