使用Facebook SDK和Windows Azure SDK时出现xcode链接问题

时间:2013-01-03 04:41:22

标签: iphone xcode azure facebook-ios-sdk

我正在构建一个使用最新Facebook SDK(v3.1)和Windows Azure iOS Toolkit SDK的应用程序。

现在Azure SDK需要将-all_load和-ObjC标志添加到Build Settings中的“Other Linker Flags”参数。当链接到包含类别的Objective-C静态库时,这是修复已知错误所必需的(请参阅http://developer.apple.com/library/mac/#qa/qa1490/_index.html)。如果没有此设置,Azure SDK会在调用某些方法时生成“未识别选择器”的运行时异常。很好,问题解决了。

但是,Facebook SDK不会在设置这些标志的情况下构建。它在构建时会生成以下错误:

Undefined symbols for architecture i386:
   "_OBJC_CLASS_$_SLComposeViewController", referenced from:
      objc-class-ref in FacebookSDK(FBNativeDialogs.o)
  "_SLServiceTypeFacebook", referenced from:
      +[FBNativeDialogs composeViewControllerWithSession:handler:] in 
FacebookSDK(FBNativeDialogs.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

关于如何让这两个库很好地一起玩的任何想法?一个库需要标志,另一个库不会使用这些标志进行构建。

2 个答案:

答案 0 :(得分:27)

您是否已将社交和帐户框架添加到项目中?

答案 1 :(得分:5)

在目标,常规,链接框架和库下添加:

Social.framework和 Accounts.framework