2013-03-05 12 views
7

Ben 32 bit mimarisi için, Xcode 4.6 ile derleyen çalışıyorum hata derleme, ancak bu hatayı almaya:Objective-C ARC ve Legacy Süre

error: -fobjc-arc is not supported on platforms using the legacy runtime 
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1 

Sorun ne?

cevap

14

ARC'yi desteklemeyen eski Objective-C 1.0 çalışma zamanı ile ARC'yi (otomatik referans sayma) karıştırıyorsunuz.

OSX'teki 32 bit uygulamalar, otomatik olarak 1.0 Çalışma Zamanı'nı kullanır, böylece projeniz için ARC'yi devre dışı bırakmanız ve Manuel Referans Sayımı'nı kullanmanız gerekir.

+0

Bir iOS uygulamasını derlerken mesaj görünürse ne olur? –

+0

Muhtemelen, iOS uygulamanızı ARC'yi desteklemeyen eski bir iOS sürümüne hedefliyorsunuz. – Alan

+1

Ayrıca, Görsel Kaynak Güvenli şeytan. – Alan

1

Bu sorun, Xcode 5'in ARCHS parametresini kaldırması nedeniyle yeniden ortaya çıktı. Ancak, Xcode 4'lü bir derleme sunucunuz varsa, bu işlem varsayılan olarak 32 ve 64 bitlik bir yapıya sahiptir ve ARC etkinleştirilmişse başarısız olur. Daha ayrıntılı bir açıklama için writeup numaralı telefon numarasına bakın.