3

我正在为 iOS 构建一个 Phonegap 应用程序,并且我正在尝试包含 Facebook 连接框架。

我从https://github.com/phonegap/phonegap-facebook-plugin遵循了所有步骤两次,但它不断给出以下错误:

Undefined symbols for architecture i386:
"_OBJC_CLASS_$_FBSBJSON", referenced from:
  objc-class-ref in FacebookConnectPlugin.o
"_SecRandomCopyBytes", referenced from:
  +[FBCrypto randomBytes:] in FacebookSDK(FBCrypto.o)
  -[FBCrypto encrypt:additionalDataToSign:] in FacebookSDK(FBCrypto.o)
"_kSecRandomDefault", referenced from:
  +[FBCrypto randomBytes:] in FacebookSDK(FBCrypto.o)
  -[FBCrypto encrypt:additionalDataToSign:] in FacebookSDK(FBCrypto.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

有人知道这里有什么问题吗?

亲切的问候

4

3 回答 3

4

您必须添加五个其他框架和库(AdSupport、Accounts、libsqlite3、Security 和 Social)才能使用 Facebook SDK。

另见:https ://developers.facebook.com/docs/getting-started/facebook-sdk-for-ios/

于 2013-05-12T06:44:10.667 回答
1

这一行:

ld: symbol(s) not found for architecture i386

意味着编译器正在尝试为 i386 编译,即 Mac OS X。如果您正在构建 iOS 应用程序,则不是您想要的架构。您一定以某种方式错过了编译器设置。

于 2013-05-08T14:36:59.633 回答
0

将 cordova.framework 添加到您的包中...我认为问题将得到解决

于 2013-09-10T10:46:32.940 回答