项目中IOS端从微信官方下的IOSdemo编译的时候遇到了
</pre><pre name="code" class="cpp">Undefined symbols for architecture x86_64:
"_SecItemAdd", referenced from:
+[WXOMTAKeyChain save:data:] in libWeChatSDK.a(MTAKeyChain.o)
"_SecItemCopyMatching", referenced from:
+[WXOMTAKeyChain load:] in libWeChatSDK.a(MTAKeyChain.o)
"_SecItemDelete", referenced from:
+[WXOMTAKeyChain save:data:] in libWeChatSDK.a(MTAKeyChain.o)
+[WXOMTAKeyChain delete:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecAttrAccessible", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecAttrAccessibleAfterFirstUnlock", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecAttrAccount", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecAttrService", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecClass", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecClassGenericPassword", referenced from:
+[WXOMTAKeyChain getKeychainQuery:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecMatchLimit", referenced from:
+[WXOMTAKeyChain load:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecMatchLimitOne", referenced from:
+[WXOMTAKeyChain load:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecReturnData", referenced from:
+[WXOMTAKeyChain load:] in libWeChatSDK.a(MTAKeyChain.o)
"_kSecValueData", referenced from:
+[WXOMTAKeyChain save:data:] in libWeChatSDK.a(MTAKeyChain.o)这些问题,应为很长时间没有弄IOS开发了 只知道肯定是库问题,后来找到的原因是缺少Security.framwork
解决办法:targets——>build phases——>link binary with libraries——>Security.framework
重编译就通过了
本文解决了一位开发者在iOS项目中引入微信官方提供的iOS demo时遇到的编译错误问题,通过添加Security.framework来解决Undefined symbols for architecture x86_64的问题。该教程对于iOS开发尤其是集成第三方库时遇到类似编译错误的开发者具有指导意义。
1358

被折叠的 条评论
为什么被折叠?



