2013-02-24 1 views
0

iPhone 용 GData 프로젝트를 설정하는 데 문제가 있습니다. 나는 대답 How to use GData in iphone?에있는 답변의 지침을 따랐다. 프로젝트를 잘 컴파일하지만 실행하려고하면 링커 오류가 발생합니다. 링커 오류가문제 설정 GData iOS 프로젝트

Undefined symbols for architecture i386: 
"_OBJC_CLASS_$_GDataServiceGoogleYouTube", referenced from: 
    objc-class-ref in BWC_ViewController-C85FBF830F43777.o 
ld: symbol(s) not found for architecture i386 

제발 그 자체 첨부 된 스크린 샷

enter image description here

감사합니다!

+0

의 세부 사항 당신은 프로젝트가 잘 컴파일 주장하기 아직 명확하게 게시 된 출력은 컴파일러 경고의 전체 무리를 보여줍니다. 경고가 나쁘다. 먼저 수정하십시오. – rmaddy

+0

경고는 Build Phases의 컴파일 소스에 헤더 파일을 추가했기 때문에 발생했습니다. 그들을 제거하고 경고는 지금 고쳐진다. 그러나 링커 오류가 계속 발생합니다. – tbag

+0

GData API는 YouTube 용 최신 API가 아닙니다. 대신 앱에서 새 JSON 기반 라이브러리 (https://code.google.com/p/google-api-objectivec-client/)를 사용해야합니다. – grobbins

답변

0

보통 오류는 #import "GDataServiceGoogleYoutube"이나 GData .m 파일이없는 상태에서 BWC_ViewController에서 GDataServiceGoogleYoutube를 사용하고 있다는 의미입니다. 다음 댓글보기 https://stackoverflow.com/a/14148008/2092007

+0

내 xcode 프로젝트의 대상에서 Gdata * .m 파일이 누락되었습니다. 그것들은 GData 프로젝트의 대상에 포함되었습니다. 그러나 대상에 추가하자 마자 경고 : $ PROJECT_DIR/TestYoutube /../../../ trunk /를 처리 할 규칙이 없습니다. 건축물 i386에 대한 유형 파일의 소스/내성/GData AtomCategoryGroup.m " – tbag

0

그래, 알았어.

Gdata API는 비 호를 사용하고 프로젝트는 호를 사용하기 때문에이 오류가 발생합니다. 이 두 가지 옵션이 방지하려면이

  1. 이동 표적이 빌드 페이즈 탭, 소스가 GDataServiceGoogleYoutube.m 파일을 더블 클릭을 찾을 컴파일 -fno-objc 아크를 입력로 이동 프로젝트를 선택합니다.

  2. 프로젝트를 호가 아닌 것으로 변경하십시오 (첫 번째 옵션을 수행하는 것이 좋습니다).

참고 : 모든 gdata 클래스를 -fno-objc-arc로 변경해야합니다.