在OS X上安装Nokogiri gem

时间:2013-12-14 02:05:39

标签: ruby macos gcc nokogiri

尝试安装Nokogiri,我收到以下错误

checking for libxml/parser.h... yes
checking for libxslt/xslt.h... yes
checking for libexslt/exslt.h... yes
checking for iconv_open() in iconv.h... yes
checking for xmlParseDoc() in -lxml2... yes
checking for xsltParseStylesheetDoc() in -lxslt... yes
checking for exsltFuncRegister() in -lexslt... yes
checking for xmlHasFeature()... yes
checking for xmlFirstElementChild()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetValidStructuredErrors()... yes
checking for xmlSchemaSetValidStructuredErrors()... yes
checking for xmlSchemaSetParserStructuredErrors()... yes
creating Makefile

make
compiling html_document.c
cc1: error: -Werror=shorten-64-to-32: no option -Wshorten-64-to-32
make: *** [html_document.o] Error 1

我想我需要使用brew安装gcc而不是我拥有的那个,但我不记得怎么做了! :)

我有:

gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin12.5.0
Thread model: posix

谢谢!

1 个答案:

答案 0 :(得分:0)

你的GCC版本对我来说很好看。我在小牛队(看起来你好像在Lion?),所以我的版本略有不同(x86_64-apple-darwin13.0.0而不是x86_64-apple-darwin12.5.0),但与你发布的内容完全相同。

我有nokogiri的问题,直到我让RVM设置为使用Ruby 1.9.3作为默认值而不是1.9.2。当我将Vagrant更新到1.4.0时,我的nokogiri宝石已被拉入,并且没有单独安装“gem install nokogiri”。我刚刚运行了一个“gem install nokogiri”,它重建时没有任何错误。

我建议您执行以下操作:

  1. brew update#以防万一
  2. rvm使用ruby-1.9.3-p392
  3. rvm alias create default ruby​​-1.9.3-p392
  4. gem install nokogiri