xcode LLVM 5.1铛错误

自从Xcode 5.1出来以后,我没有运气。

我不断收到这个错误在一个旧的项目,支持iOS 6.0:

ERROR: clang: error: unknown argument: '-fno-obj-arc' [-Wunused-command-line-argument-hard-error-in-future] clang: note: this will be a hard error (cannot be downgraded to a warning) in the future Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1 

有没有关于这个在互联网上的很多post和一些build议似乎是改变你的CFLAGS但我不知道如何在Xcode中做到这一点。

苹果公司从他们的文件中build议:

编译器

从Apple LLVM编译器版本5.1(clang-502)及更高版本开始,优化级别-O4不再意味着链接时间优化(LTO)。 为了与LTO一起构build,除了优化级别标志外,还明确使用-flto选项。 (15633276)Xcode 5.1中的Apple LLVM编译器将无法识别的命令行选项视为错误。 当构buildPython本地扩展和Ruby Gems(当前指定了一些无效的编译器选项)时,已经看到了这个问题。 使用无效编译器选项的项目将需要更改以删除这些选项。 为了帮助缓解这种转换,编译器会暂时接受一个选项来将错误降级为警告:

-Wno-error=unused-command-line-argument-hard-error-in-future

注意:这个选项将来不会被支持。 要解决此问题,请将ARCHFLAGS环境variables设置为将错误降级为警告。 例如,您可以通过以下方式安装Python本机扩展:

$ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future easy_install ExtensionName

同样,你可以安装Ruby Gem:

$ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install GemName 16214764 updated

我如何得到这个解决方法? 显然,苹果公司已经搞砸了,因为它应该只是根据他们的文件给我发一个警告,而不是一个错误。

任何帮助将不胜感激。 在问题解决之前,我无法构build我的应用程序。

没有像-fno-obj-arc这样的东西。 这从来没有工作正常; 你只是没有看到警告。 正确的forms是-fno-objc-arc

编辑(附加信息从我的意见下面):这不是一个铛错误。 这是项目中的错误; 铛只是报告而已。 该项目本身错误地包含了-fno-obj-arc参数,可能是在目标的编译源代码阶段(如下所述: 如何禁用项目中单个文件的ARC? )。 input设置很容易, Xcode 5.1中的变化仅仅是叮当声现在正在唤起你的注意力。 因此,正如我之前所说,这从来没有正常工作。 你大概是打算closures某些文件的弧,但你没有这样做,因为构build参数被错误地input。

现在更新到xcode抛出未知的编译器标志作为硬错误,而不是警告。 发现这是有帮助的:

https://langui.sh/2014/03/10/wunused-command-line-argument-hard-error-in-future-is-a-harsh-mistress/

我find了一点马特的帮助。
我试图找出在哪里改变-fno-obj-arc,没有人回答这个问题。 我发现这个链接是有帮助的… http://blog.evanmulawski.com/?p=36

一旦你select了构build阶段和编译源代码,你可以看看你的项目中的文件,并更改它们的构build标志。

谢谢你们的尝试。

 export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future" 

您需要将-fno-obj-arc更改为-fno-objc-arc。 select项目 – >目标 – >build立阶段..见图片 在这里输入图像说明