Xcode 9 _OBJC_CLASS _ $ _ FBSDKApplicationDelegate

时间:2017-09-27 18:05:31

标签: ios xcode facebook-ios-sdk facebook-ios-sdk-4.0

我正在尝试将Facebook SDK应用到我的项目中,我遇到了同样的问题 Facebook sdk is not a dylib error after update update Xcode 7? 好吧,我的Bolts目录中有Frameworks,也是

在我的Build Settings中: Frameworks Search Path: ~/Documents/Frameworks/FacebookSDKs-iOS-4.27.0 (这对我的道路来说是正确的)

在我的Briding-Header.h

#import <Bolts/Bolts.h>
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <FBSDKLoginKit/FBSDKLoginKit.h>

但是,我仍然遇到同样的错误,我刚刚删除了Derived data

错误是:

ld: warning: Auto-Linking supplied '/Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/FBSDKCoreKit.framework/FBSDKCoreKit', framework linker option at /Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/FBSDKCoreKit.framework/FBSDKCoreKit is not a dylib
ld: warning: Auto-Linking supplied '/Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/Bolts.framework/Bolts', framework linker option at /Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/Bolts.framework/Bolts is not a dylib
ld: warning: Auto-Linking supplied '/Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/FBSDKLoginKit.framework/FBSDKLoginKit', framework linker option at /Users/jarvis/Documents/Frameworks/FacebookSDKs-iOS-4.27.0/FBSDKLoginKit.framework/FBSDKLoginKit is not a dylib
Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_FBSDKApplicationDelegate", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

有人对此错误有所了解吗?

3 个答案:

答案 0 :(得分:4)

嗯,解决方案很奇怪,基本上,我删除了拖放到我的pathlib.Path(__file__).with_suffix('').name 组,并添加了FrameworkFBSDKCoreKitFBSDKLoginKitBolt

中添加它们的常规设置

答案 1 :(得分:0)

我也遇到了这个错误,并且 清理项目并再次构建它 对我来说是4-5次。

  • 清洁-Command + Shift + K

  • 建筑物-Command + B

答案 2 :(得分:-1)

而不是使用FB官方参考中描述的方法,我用pods来安装它们,我很容易摆脱这个问题