2013-06-22 3 views
1

Я пытаюсь использовать Google Plus SDK для совместного использования в приложении iOS 6.1 и получить ошибку компоновщика после добавления GooglePlus.framework и GoogleOpenSource.framework.Ошибка компоновщика при интеграции iOS и Google Plus SDK

Просто включая рамки и строительство дает следующие ошибки:

Undefined symbols for architecture armv7: 
"_CGRectDivide", referenced from: 
    -[GTMOAuth2ViewControllerTouch moveWebViewFromUnderNavigationBar] in GTMOAuth2ViewControllerTouch.o 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Я следовал инструкциям, приведенным в Google guide безрезультатно. Я сделал следующее:

  1. Включено SystemConfiguration.framework и Security.framework
  2. Потянулись и уронил GooglePlus.framework и тому GoogleOpenSource.framework из SDK в мой XCode проект
  3. Добавлена -ObjC флаг настройки сборки приобретаемой приложения

в дополнение к предыдущим шагам, я также попытался добавить содержимое папки OpenSource, представленной в SDK, но что не имел эффекта вызвал дополнительные проблемы после первоначального исправления.

Библиотеки:

My included libraries

Полное сообщение об ошибке:

Ld "/Users/me/Library/Developer/Xcode/DerivedData/MyApp-asdf/Build/Intermediates/MyApp.build/ 
Debug-iphoneos/MyAoo.build/Objects-normal/armv7/MyApp" normal armv7 
    cd /Users/me/code/MyApp 
    setenv IPHONEOS_DEPLOYMENT_TARGET 6.1 
    setenv PATH   

"/Applications/Xcode.app/Contents/Developer/Platforms/ 
iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/ 
Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 

/Applications/Xcode.app/Contents/Developer/Toolchains/ 
XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot 
/Applications/Xcode.app/Contents/Developer/  
Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk 

-L/Users/me/Library/Developer/Xcode/DerivedData/ 
MyApp-asdf/Build/Products/Debug-iphoneos 

-L/Users/me/code/MyApp/MyApp 

-F/Users/me/Library/Developer/Xcode/DerivedData/MyApp-asdf/Build/Products/Debug-iphoneos 

-F/Users/me/code/MyApp/../../Documents/FacebookSDK -F/Users/me/code/MyApp 

-F/Users/me/code/MyApp/MyApp 

-filelist "/Users/me/Library/Developer/Xcode/ 
DerivedData/MyApp-asdf/Build/Intermediates/ 
MyApp.build/Debug-iphoneos/MyApp.build/Objects-normal/armv7/MyApp.LinkFileList" 

-dead_strip -ObjC -lsqlite3.0 -fobjc-arc 
-fobjc-link-runtime -miphoneos-version-min=6.1 
-framework SystemConfiguration -framework Security 
-framework CFNetwork -framework Social -framework Accounts 
-framework EventKit -framework EventKitUI 
-framework AVFoundation -framework MapKit 
-framework Twitter -framework CoreMotion -framework CoreLocation 
-lxml2 -framework QuartzCore 
-framework MobileCoreServices -framework CoreData 
-framework UIKit -framework Foundation 
-framework Pinterest -framework GooglePlus 
-framework GoogleOpenSource 
-lGooglePlusUniversal -o 

"/Users/me/Library/Developer/ 
Xcode/DerivedData/MyApp-asdf/Build/Intermediates/MyApp.build/ 
Debug-iphoneos/MyApp.build/Objects-normal/armv7/MyApp" 

Undefined symbols for architecture armv7: 
    "_CGRectDivide", referenced from: 
     -[GTMOAuth2ViewControllerTouch moveWebViewFromUnderNavigationBar] in 
    GTMOAuth2ViewControllerTouch.o 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Я не уверен, что я пропустил, но любая помощь будет принята с благодарностью.

ответ

4

Также ссылка в структуре CoreGraphics. Он ищет метод CGRectDivide, который является частью CoreGraphics.

+0

Спасибо! Это сработало! – ktdh

0

Эта ошибка вызвана добавлением папки OpenSource в проект, xcode обнаруживает, что происходит дублирование файлов. Поэтому вы должны добавлять только GooglePlus.framework и GoogleOpenSource.framework.