2012-10-15 78 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解决了这个问题。

因此,它看起来像我想要删除的选项,并重新编译一切。