17

我正在尝试将 Flurry 从 4.2.2 更新到 4.2.3 的最新版本。我已经更新了文件,但现在我遇到了各种链接错误。

    Undefined symbols for architecture i386:
  "_SecItemAdd", referenced from:
      -[FlurryKeychainWrapper setData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_SecItemCopyMatching", referenced from:
      -[FlurryKeychainWrapper dataForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_SecItemDelete", referenced from:
      -[FlurryKeychainWrapper removeObjectForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_SecItemUpdate", referenced from:
      -[FlurryKeychainWrapper updateValueData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecAttrAccessible", referenced from:
      -[FlurryKeychainWrapper setData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecAttrAccessibleWhenUnlocked", referenced from:
      -[FlurryKeychainWrapper setData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecAttrAccount", referenced from:
      -[FlurryKeychainWrapper setupSearchForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecAttrGeneric", referenced from:
      -[FlurryKeychainWrapper setupSearchForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecAttrService", referenced from:
      -[FlurryKeychainWrapper setupSearchForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecClass", referenced from:
      -[FlurryKeychainWrapper setupSearchForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecClassGenericPassword", referenced from:
      -[FlurryKeychainWrapper setupSearchForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecMatchLimit", referenced from:
      -[FlurryKeychainWrapper dataForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecMatchLimitOne", referenced from:
      -[FlurryKeychainWrapper dataForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecReturnData", referenced from:
      -[FlurryKeychainWrapper dataForKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
  "_kSecValueData", referenced from:
      -[FlurryKeychainWrapper setData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
      -[FlurryKeychainWrapper updateValueData:forKey:] in libSDLibrary.a(libFlurry.a-i386-master.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

至少可以说是相当令人沮丧的。我已经包含了 SystemConfiguration 框架(如此所述)。我正在运行 xCode 4.6.3。关于问题可能出在哪里的任何想法?

4

1 回答 1

42

您需要添加Security.framework,因为链接器错误中提到的符号来自该框架。


来自Flurry 更新页面

我该如何更新?

在此处下载最新版本的 Flurry SDK(版本 4.2.3)。在您的构建过程中包含 Apple 的安全框架。(有关如何执行此操作的详细信息,请参阅下面的常见问题解答条目)

“安全”框架是强制性的吗?

为确保数据的完整性,Flurry 要求您在更新的应用程序中包含此框架。

于 2013-09-12T14:29:15.353 回答