为了账号安全,请及时绑定邮箱和手机立即绑定

RubyGemInstallJson在小牛和Xcode 5.1上失败-未知参数:‘-乘_定义抑制’

RubyGemInstallJson在小牛和Xcode 5.1上失败-未知参数:‘-乘_定义抑制’

紫衣仙女 2019-06-20 17:23:16
RubyGemInstallJson在小牛和Xcode 5.1上失败-未知参数:‘-乘_定义抑制’我尝试运行gem安装json并得到以下错误Gem::Ext::BuildError: ERROR: Failed to build gem native extension.     /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb  creating Makefilemake "DESTDIR=" clean make "DESTDIR="compiling generator.c linking shared-object json/ext/generator.bundle clang: error: unknown argument: '-multiply_definedsuppress' [-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 make: *** [generator.bundle] Error 1make failed, exit code 2Gem files will remain installed in /opt/boxen/repo/.bundle/ruby/2.0.0/ gems/json-1.8.0 for inspection.Results logged to /opt/boxen/repo/.bundle/ruby/2.0.0/extensions/universal-darwin-13/2.0.0/json-1.8.0 /gem_make.out我用的是:OS X:10.9.2Xcode:5.1构建版本5B130a命令行工具(CLT):5.1.0.0.1.1393561416Ruby:Ruby2.0.0p247(2013-06-27修订版41674)[General.x86_64-darwin 13]Ruby Gem:2.2.2GCC:4.2.1 Apple LLVM 5.1版(clang-503.0.38)(基于LLVM 3.4svn)
查看完整描述

3 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

在将Xcode更新到5.1之后,我遇到了同样的问题,苹果的消息也不太好。从…Xcode 5.1发行说明:

  • Xcode 5.1中的AppleLLVM编译器将无法识别的命令行选项视为错误。在构建Python本机扩展和RubyGems(当前指定了一些无效的编译器选项)时,就发现了这个问题。

需要更改使用无效编译器选项的项目以删除这些选项。为了帮助简化转换,编译器将临时接受将错误降级为警告的选项:

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

若要解决此问题,请将ARCHFLAGS环境变量设置为将错误降级为警告。

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

似乎所有违反编译器选项的GEM都必须更新,才能使用有效的选项。报告明确指出:此选项[降级为警告]今后将不受支持。.

我们所看到的响亮的音符(这将是一个严重的错误(不能降级为警告)在未来。)对应于发布说明中宣布的更改。


若要具体回答您的问题,请使用以下方法安装JSONGEM:

ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install json

但是,请注意,这只是一个临时修复。


查看完整回答
反对 回复 2019-06-20
  • 3 回答
  • 0 关注
  • 603 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信