2011-04-28 3 views
1

인사말!Xcode 업그레이드 후 iOS 용으로 컴파일 할 수 없음

오늘 아침 XCode를 재설치 한 이후로 iOS 프로젝트를 컴파일 할 수 없었습니다. Mac OS 타겟은 완벽하게 작동하지만 iOS 타겟은 작동을 거부합니다. XCode에 포함 된 템플릿조차도 컴파일을 거부합니다.

자, 여기에 내 오류 메시지가 포함되어야합니다. 여기서 문제는 일반 템플릿이 14300 개의 오류를 출력한다는 것입니다. 이러한 오류는 프로젝트의 파일에서 가져온 것이 아니므로 math.h, signal.h, stddef.h, stdlib.h, time.h, CFBase.h, CFArray.h 및 기타 내장 헤더에 있습니다. . 오류는 너무 많은 이름에 너무 다른,하지만 그들 중 많은이 형태가 될 것 같다 :

  • 예상 * 전 * : CFBitVector.h : 17 : 오류 : 예상 '=', ',' , ';', 'ASM'또는 '속성'이전 'CFBitVectorGetTypeID'
  • 예상 * 전 * : /math.h:470 : m : 오류 : '__AVAILABILITY_INTERNAL__IPHONE_3_2'
  • GCC 4.2 오류 전에 예상 선언 지정자 /math.h:477 : 오류 : 'scalb'매개 변수에 지정된 저장소 클래스

중 프로젝트 파일 중 하나 인 Viewer-Prefix.pch에 오류가 있습니다. 이 파일은 다음과 같습니다

#import <Availability.h> 

#ifndef __IPHONE_3_0 
#warning "This project uses features only available in iPhone SDK 3.0 and later." 
#endif 

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
#endif 

"# import에"와 선이 정확한 오류를 제공합니다

    프로토 타입 기능에
  • 예상 '{'입력의 끝에
  • 이전 스타일 매개 변수 delcarations 프로토 타입 함수 정의에서 정의
  • 이전 스타일 매개 변수 delcarations
  • 예상 '{'가 입력의 끝에

현재 XCode 버전은 4.0.2이고 iPhone SDK는 4.3입니다. 나는 Xcode 4.0.0에서 업그레이드 한 첫 번째 버전이라고 생각한다. iOS 용으로 컴파일 할 때만 이러한 오류 메시지가 표시되므로 SDK에 문제가있을 수 있다고 생각했습니다.

맥 OS X : 10.6 : (4A2002a)

아이폰 OS : 4.3 : (8H7)

아이폰 시뮬레이터 : 3.2 : (7W367a) 4.0 시스템 정보는 설치로 다음과 같은 SDK의의를 나열합니다 : (8A400) 4.1 (8B117) 4.2 (8C134) 4.3 : (8H7)

결론 : 나는 어디서부터 시작 모른다. 프로젝트 파일 밖에서 어떤 에러도 발생하지 않았고 실제로 14300 에러가 있다고 믿기가 힘듭니다.

추가 사실 :

  • 자료 SDK : 마지막으로 아이폰 OS (아이폰 OS 4.3)
  • 아키텍처 : 표준 (ARMv6에있는 ARMv7)
  • 플랫폼 : iphonesimulator의 iphoneos
  • 맥 OS X 배포 대상 : 컴파일러 기본
  • 아이폰 OS 배포 대상 : 아이폰 OS 4.3
  • C/C++ 컴파일러 버전 : LLVM GCC 4.3
+0

Xcode를 완전히 제거하고 처음부터 다시 설치하려면 제거 스크립트를 사용하십시오. 4.0.2로 업그레이드 할 때 –

+0

을 사용하면 모든 기본 옵션을 확인 했습니까? 설치하는 동안 문제가 있었습니까? 그 당시에 기존 Xcode를 실행하지 않았는지 확인 했습니까? 빌드 설정에서 Base SDK, 아키텍처, 플랫폼 및 배포 대상의 값은 무엇입니까? –

+0

제거하려면 :'/ Developer/Library/uninstall-devtools' –

답변

1

좋아, 내가 여기 내 문제의 원인이었다. 새 프로젝트의 이름을 "뷰어"로 지정했는데 프로젝트의 이름이 문제를 일으키는 것 같습니다. 이전 프로젝트가 컴파일되지 않은 이유는이 "뷰어"프로젝트가 열려 있었기 때문에 결국 XCode가 손상되었습니다.

왜 이런 일이 발생했는지 궁금합니다. 한 가지 이론은 SDK 파일 중 일부와 동일한 이름의 파일을 생성하지만 정직하지는 않습니다. 다른 프로젝트 이름이 동일한 결과를 생성하는지 여부를 아는 것도 흥미로울 것입니다.

+1

프로젝트 이름이 효과가 있는지 의심 스럽습니다. 내 짐작으로는 프로젝트 파일과 프레임 워크의 위치가 펑키 한 것이 있습니다. 새 프로젝트를 새로 시작하고 프로젝트 디렉토리에 모든 파일을 복사 한 다음 모든 프레임 워크에서 링크를 하나씩 참조하십시오. –

+0

이상하게도 본질적으로 같지만 프로젝트 이름이 다르며 같은 위치에있는 프로젝트를 만들면 오류가 발생하지 않습니다. 다른 프로젝트 이름도 정상적으로 작동하지만 "Viewer"라는 프로젝트를 만들면 오류가 발생해도 상관 없습니다. 나는 이것을 여러 번 확인했다. 내 Mac에 설치하면 뭔가 재미있을 것 같아. – Bendik

관련 문제