有些简单的事情有时候不起作用;)就像这一样!我正按照此处提供的说明尝试将Google+ SDK集成到iPhone App中:
https://developers.google.com/+/mobile/ios/#initialize_the_google_client
我做了每一步。但是当我构建应用程序时,它会抱怨以下错误:
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_GTMOAuth2Keychain", referenced from:
objc-class-ref in libGooglePlusUniversal.a(GooglePlusSignIn.o)
"_OBJC_CLASS_$_GTMOAuth2SignIn", referenced from:
objc-class-ref in libGooglePlusUniversal.a(GooglePlusSignIn.o)
"_OBJC_CLASS_$_GTMOAuth2ViewControllerTouch", referenced from:
objc-class-ref in libGooglePlusUniversal.a(GooglePlusSignIn.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
它所报告的类是开源Google工具箱项目的一部分(也存在于下载的SDK中,但说明要求用户仅在XCode项目中包含GooglePlusShare.h和libGooglePlusUniversal.a) 。我尝试从目录'google-plus-ios-sdk-1.0.0 \ OpenSource'中包含头文件,但这没用。我尝试从目录'google-plus-ios-sdk-1.0.0 \ OpenSource'&中包含整个(不仅仅是.h文件)。它会导致很多ARC相关的错误(超过500个!);所以我退出了这个选项。
有关如何解决这些链接器错误的任何帮助吗?
我的环境:XCode 4.3.3,iOS 5.0,Mac OS X Lion 10.7.4,使用iPhone 4进行测试
答案 0 :(得分:1)
Just select GData.xcodeproj .
select GDataTouchStaticLib from target .
search "othet c flag"
remove "-DGTM_INCLUDE_OAUTH2=1" if exist
add "-DGDATA_INCLUDE_OAUTH2=1"
click on done. clean project and then build.
答案 1 :(得分:0)
缺少钥匙串和auth-stuff通常意味着您从未在项目中导入Security.framework。
如果确实包含了库
,请再次检查在Xcode项目中,如您所提及的说明的第1步中所述。
验证这一点: