2011-04-28 121 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:米:錯誤: '__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 

以「#進口」行給出了這些詳細的錯誤:

  • 預期的「{」在輸入結束
  • 舊式參數原型在功能delcarations定義
  • 在原型函數定義舊式參數delcarations
  • 預期的「{」在輸入結束

XCode的當前版本是4.0.2,iPhone SDK是4.3。我相信我是從第一個出來的XCode 4.0.0升級而來的。由於我在編譯iOS時只收到這些錯誤消息,我認爲我的SDK可能存在問題。系統概述列出以下SDK的與安裝:

的Mac OS X 10.6:(4A2002a)

iPhone OS:4.3:(8H7)

iPhone模擬器: 3.2:(7W367a) 4.0: (8A400) 4.1(8B117) 4.2:(8C134) 4.3:(8H7)

底線:我不知道從哪裏開始。我從來沒有任何項目文件以外的任何錯誤,我很難相信其實有14300錯誤。

額外的事實:

  • 基地SDK:最新的iOS(iOS 4的。3)
  • 體系結構:標準(用於ARMv6的ARMv7)
  • 平臺:iphonesimulator的iPhoneOS
  • Mac OS X的部署目標:編譯器默認
  • iOS的部署目標:的iOS 4.3
  • C/C++編譯器版本:LLVM GCC 4.3
+0

使用卸載腳本完全卸載Xcode,然後重新從頭安裝。 – 2011-04-28 16:32:07

+0

在您升級到4.0.2時是否檢查過所有默認選項?安裝過程中是否有任何問題?您是否確定當時沒有運行現有的Xcode?在Build Settings中,Base SDK,體系結構,平臺和部署目標的值是什麼? – 2011-04-28 16:35:30

+0

要卸載:'/ Developer/Library/uninstall-devtools' – 2011-04-28 18:03:27

回答

1

好吧,看來我是我自己的問題的原因在這裏。我將這個新項目命名爲「查看器」,似乎該項目的名稱導致了問題。舊項目沒有編譯的原因是因爲我打開了這個「查看器」項目,並最終崩潰了XCode。

我很好奇爲什麼發生這種情況。一種理論是,這會創建與某些SDK文件同名的文件,但我不太清楚。知道是否有其他項目名稱會產生相同的結果也很有趣。

+1

我會懷疑項目名稱有任何影響。我的猜測是你的項目文件和框架的位置有點怪異。我會嘗試重新開始一個新項目,並仔細將所有文件複製到項目目錄,然後在所有框架中逐一鏈接。 – 2011-04-29 09:19:53

+0

好吧,奇怪的是,創建一個基本相同的項目,但是使用不同的項目名稱,並且在相同的位置,不會產生任何錯誤。其他項目的名稱工作得很好,但創建一個名爲「查看器」的項目將無論給我什麼錯誤。我已經多次驗證了這一點。不過,你可能是對的,在我的Mac上安裝有些東西。 – Bendik 2011-04-29 10:50:55

相關問題