2016-12-11 5 views
0

은 내가이 문제에 대해 묻는 첫 번째 사람은 아닌 것처럼 보이지만 시도해야합니다. 아무도이 문제가 발생합니까?iOS 용 XCODE - 아키텍처 용 armv7에 대한 정의되지 않은 기호

Undefined symbols for architecture armv7: 
    "_OBJC_CLASS_$_GSDK_GTMSessionFetcher", referenced from: 
     objc-class-ref in gpg(GPGClearcutLogger.o) 
    "_OBJC_CLASS_$_GSDK_GTMSessionFetcherService", referenced from: 
     objc-class-ref in gpg(GIPNetworkImage.o) 
    "_GTMMethodCheckMethodChecker", referenced from: 
     +[NSDictionary(GTMNSDictionaryURLArgumentsAdditions) xxGTMMethodCheckMethodNSString32] in libGoogleToolboxForMac.a(GTMNSDictionary+URLArguments.o) 
     +[NSDictionary(GTMNSDictionaryURLArgumentsAdditions) xxGTMMethodCheckMethodNSString33] in libGoogleToolboxForMac.a(GTMNSDictionary+URLArguments.o) 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

일부 Google Play 종속성이 원인입니다. 유사한 문제가있는 다른 스레드에서 권장되는 XCODE의 일부 값을 전환하려고했습니다. 즉, 설정 -> 아키텍처, 유효한 아키텍처, 지원되는 플랫폼, 기본 sdk, 활성 아키텍처 만 빌드합니다. 또한 변경 사항이 없으며 링크 중에도 여전히 동일한 오류가 발생합니다. 코코아 포드가 설치되었습니다.

저는 XCODe 8.1을 사용합니다.

제안 사항?

+0

GooglePlayGames를 포함하기 위해 CocoaPod를 사용하고 있습니까? 아니면 수동으로 가져 왔습니까? – GayleDDS

+0

실제로 프로젝트는 Unity에 의해 조립되었으므로 100 % 확신 할 수는 없지만 xcode 프로젝트를 생성 한 이후로 cocoapods를 사용하고 있다고 생각합니다. –

+0

Unity를 전혀 모르지만 CocoaPod를 사용하십시오. GTMSessionFetcher/Core는 GoogleSignIn 마녀의 의존성은 GooglePlayGames의 포드 의존성입니다. podfile을 가지고 있다면 Xcode를 닫고'pod install'을 실행 한 다음'pod update'를 실행하고 작업 공간 파일 (프로젝트가 아님)을 열고 빌드하십시오. 희망이 도움이됩니다. – GayleDDS

답변

0

나는 스스로 해결할 수있었습니다. 핵심은이 같은 포드 파일 편집 (유니티 5.3.6f1 테스트를 GPG 게임 0.9.34와 엑스 코드 8.1 플러그인)입니다 :

platform :ios, '8.0' 

target 'Unity-iPhone' do 
pod 'GooglePlayGames', '5.1' 
end 

는 당신은 pod install을 실행해야하고 작동!