ios – FacebookSDK 3.0 – Apple Mach-O链接器错误

我正在尝试在我的一个应用程序中实现Facebook,因此遵循了Hackbook的官方Facebook教程. https://developers.facebook.com/docs/howtos/login-with-facebook-using-ios-sdk/

我实现了所描述的一切,我没有收到任何错误或警告.但是当我尝试构建应用程序时,我会得到17个Mach-O链接错误.

Undefined symbols for architecture i386:
  "_FBSessionStateChangednotification",referenced from:
      -[ForeverMainViewController sessionStateChanged:state:error:] in ForeverMainViewController.o
  "_sqlite3_bind_double",referenced from:
      -[FbcacheIndex _updateEntryInDatabaseForKey:entry:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _writeEntryInDatabase:] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_bind_int",referenced from:
      -[FbcacheIndex _updateEntryInDatabaseForKey:entry:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _writeEntryInDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _trimDatabase] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_bind_text",referenced from:
      -[FbcacheIndex _updateEntryInDatabaseForKey:entry:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _writeEntryInDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _removeEntryFromDatabaseForKey:] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_close",referenced from:
      ___23-[FbcacheIndex dealloc]_block_invoke_0 in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_column_double",referenced from:
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_column_int",referenced from:
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _fetchCurrentdiskUsage] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _trimDatabase] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_column_text",referenced from:
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _trimDatabase] in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_errmsg",referenced from:
      _releaseStatement in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _updateEntryInDatabaseForKey:entry:] in FacebookSDK(FbcacheIndex.o)
      _initializeStatement in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _writeEntryInDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _fetchCurrentdiskUsage] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _removeEntryFromDatabaseForKey:] in FacebookSDK(FbcacheIndex.o)
      ...
  "_sqlite3_exec",referenced from:
      ___36-[FbcacheIndex initWithCacheFolder:]_block_invoke_0 in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_finalize",referenced from:
      _releaseStatement in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_open_v2",referenced from:
      ___36-[FbcacheIndex initWithCacheFolder:]_block_invoke_0 in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_prepare_v2",referenced from:
      _initializeStatement in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_reset",referenced from:
      _initializeStatement in FacebookSDK(FbcacheIndex.o)
  "_sqlite3_step",referenced from:
      -[FbcacheIndex _updateEntryInDatabaseForKey:entry:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _writeEntryInDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _readEntryFromDatabase:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _fetchCurrentdiskUsage] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _removeEntryFromDatabaseForKey:] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _dropTrimmingTable] in FacebookSDK(FbcacheIndex.o)
      -[FbcacheIndex _trimDatabase] in FacebookSDK(FbcacheIndex.o)
      ...
ld: symbol(s) not found for architecture i386

重新实施后,清理应用程序,确保一切都在那里,我没有想法.我也在另一个应用程序中实现了它,但是再次出现了错误.来自Facebook的给定样品按照预期工作.我在互联网上做了各种各样的笔尖,但是他们都没有工作到目前为止.也许有人在这里知道一些关于API,并有一个很好的提示我:)

解决方法

我想你错过了这一行

Nsstring * const FBSessionStateChangednotification = @“FBSessionStateChangednotification”;

添加对-lsqlite3.0的引用

https://developers.facebook.com/docs/getting-started/getting-started-with-the-ios-sdk/#project

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...