2012-08-07 103 views
3

我想要使用Xcode 4.4在Mountain Lion上構建的OS X應用程序以在Lion上工作。Lion不會運行使用Mountain Lion構建的應用程序

設置OS X部署目標到10.7沒有幫助。該應用程序仍然不會在Lion上運行。 (該應用程序不會打開,點擊它什麼也沒有。)

我試着將基礎SDK設置爲10.7,但我得到了很多錯誤,因爲我使用的是NSArrayNSDictionary文字,下標以及默認值合成@property到處都是。

根據Objective-C Feature Availability Index這些功能應該適用於Lion。

還有什麼問題呢?

+1

您是否曾嘗試在調試器中運行它以查看其崩潰的位置? – trojanfoe 2012-08-07 06:57:29

+0

該應用程序甚至不會打開。我點擊它,它什麼都不做。 – kmikael 2012-08-07 07:01:32

+2

應用程序無法以各種不同的方式做任何事情;也許調試器會告訴你錯誤是什麼;例如,獅子甚至嘗試運行應用程序等。 – trojanfoe 2012-08-07 07:03:34

回答

5

NSWindow不支持Lion中的弱引用。從「過渡到ARC發行說明」:

哪些類不支持弱引用?

您當前無法創建弱引用到 以下類的實例:

NSATSTypesetterNSColorSpaceNSFontNSMenuViewNSParagraphStyleNSSimpleHorizontalTypesetterNSTextView

注:此外,在OS X v10.7,你不能給NSFontManagerNSFontPanelNSImageNSTableCellViewNSViewControllerNSWindow,並NSWindowController 實例創建弱引用。另外,在OS X v10.7中,AV Foundation框架中沒有任何類支持弱 引用。 對於聲明的屬性,應該使用assign而不是 weak;對於變量,您應該使用__unsafe_unretained而不是 __weak。

此外,您不能創建從 NSHashTableNSMapTable,或NSPointerArray ARC情況下弱引用。

所以是的,編譯Lion時應該使用assign。 (reference

+0

謝謝。這是我的問題。 – kmikael 2012-08-07 21:07:24

相關問題