2011-03-12 10 views
1
로 업그레이드 한 후

난 그냥 엑스 코드 4와 아이폰 OS 4.3으로 업데이트하지만 지금은/빌드 내 프로젝트를 실행하려고하면, 다음과 같은 JSON SDK 오류 반환 :아이폰 JSON 오류 엑스 코드 4, 아이폰 OS 4.3

ld: warning: ignoring file /var/folders/OV/OVQ5LuaPFY4lW0L0a9jdRk+++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphoneos-iPhoneOS4.3-dqtvoenrseczxwakgamuhnlmhcbu/usr/local/lib/libjson.a, file was built for archive which is not the architecture being linked (armv7) 
Undefined symbols for architecture armv7: 
    "_OBJC_CLASS_$_SBJSON", referenced from: 
     objc-class-ref in Neighbourhoods.o 
     objc-class-ref in StreetLevel.o 
     ... 
ld: symbol(s) not found for architecture armv7 
collect2: ld returned 1 exit status 

을 Xcode 4로 업그레이드 한 후 지금은 릴리스 용으로 빌드하려고 시도하는 것 같지만 이전 버전에서는 디버그 용으로 빌드 한 것으로 생각되지만 어디에서 변경할 수 있는지는 생각할 수 없습니다.

내가 아래에 설치된 JSON SDK있어 ~/라이브러리/SDK를/

이 SDK 릴리스 및 디버그 모두에 대한 추가 SDK를 섹션에 추가되었습니다. 나는 또한 다음의 'Other Linker Flags'가 release와 debug 모두에 추가되었음을 확인했다 : "-all_load -ObjC -ljson".

모두 확인/추가 한 후에도 빌드되지 않습니다.

누구든지이 문제에 관해 밝힐 수 있습니까?

+0

업그레이드 후 링커 오류가 발생하면 항상 전체 제거를 수행 한 다음 나중에 개발자 폴더를 삭제하십시오. 그럼 난 그냥 다시 설치하고 항상 잘 작동하는 것 같습니다. –

+0

그걸로 운이 없어, 나는 Xcode를 제거하고, 개발자 폴더를 삭제하고 재설치했지만 여전히 운이 없다. –

답변

1

왜 결국 업데이트가 작동을 멈췄는지 잘 모르겠지만 이제는 SDK를 제거하고 프로젝트에 소스 코드를 추가했지만 이상적이지는 않습니다.

+0

정확하고 이상적인 솔루션 인 위의 내 대답을 확인하십시오. – Shazron

+0

내 모습이 고쳐 졌으므로 문제가 해결되지 않았을 것으로 생각됩니다. –

1

타사 라이브러리를 작성할 때 동일한 오류가 발생했습니다. 4.2.6 이하에서는 불평하지 않았습니다. 라이브러리 프로젝트를 열고 "프로젝트 -> 프로젝트 설정 편집 -> 빌드 탭"메뉴로 이동하여 "아키텍처"를 살펴보십시오.

"Architectures"및 "Valid Architectures"하위 항목에 "armv7"에 대한 참조가 있는지 확인하십시오. 그렇지 않으면 선택/추가해야합니다.

활성화 대상에 대해 동일한 작업을 수행하십시오 : 메뉴 "프로젝트 -> 활성 대상 편집 -> 빌드".

변경 한 후에 다시 빌드하면 링커 오류가 없어야합니다.

0

Xcode 4를 업데이트 한 후 SDK 4.3으로 전환 한 후 연결에 실패한 프로젝트가있었습니다. 타겟 아키텍처에서 ARM7을 제거하고 ARM6 만 남겨두고 수정했습니다. 어둠 속에서 촬영했지만 다른 사람들도이 해결 방법을 사용할 수 있습니다.

+0

나는 처음에 그걸 시도했지만, ARM7은 더 새롭고 빠른 아키텍처 였으므로 나는 그 길을 찾아 그 자리에 남기 위해 노력했다. –