2012-10-15 96 views
4

將Xcode更新爲最新版本,並在嘗試編譯我的現有項目時現在出現奇怪的編譯器錯誤。我認爲這是一些需要改變的構建設置,但不能解決問題。iOS 6.0 Apple LLVM編譯器4.1錯誤

Apple LLVM Compiler 4.1 error 
clang: error: the clang compiler does not support '-fobjc-abi-version=0' 
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1 

這是什麼意思?

回答

1

clang manpage

-fobjc-abi-version=version 
      Select the Objective-C ABI version to use. Available versions are 1 
      (legacy "fragile" ABI), 2 (non-fragile ABI 1), and 3 (non-fragile 
      ABI 2). 

從這個stackoverflow answer

非脆弱ABI指的是實例變量添加到 一類,而不需要所有子類的重新編譯的能力。

I.e.在v1(真的不是真正的ObjC版本),如果蘋果是 添加一個實例變量,例如,NSView(在可可,32位),然後 NSView的每個子類(或子類的子類)將有重新編譯爲 或者他們會炸燬。 v2和v3解決了這個問題。

因此,它看起來像我想要刪除的選項,並重新編譯一切。