【问题标题】:installing rails on mac yosemite 10.10在 Mac 优胜美地 10.10 上安装导轨
【发布时间】:2015-06-02 09:32:14
【问题描述】:

优胜美地操作系统 10.10 我正在笔记本电脑上构建 ror 开发环境。 按照 [installrails.com][1] 步骤,现在卡在安装导轨上。 有人帮助会很棒。谢谢

构建原生扩展。这可能需要一段时间... 错误:错误 安装 rails: 错误: 无法构建 gem 原生扩展。

/Users/jasonyang/.rvm/rubies/ruby-2.2.0/bin/ruby -r ./siteconf20150329-3365-1fd5w4t.rb extconf.rb checking if the C

编译器接受...是检查 C 编译器是否接受 -Wno-error=unused-command-line-argument-hard-error-in-future... no 使用打包库构建 nokogiri。检查 gzdopen() -lz... 是的,检查 iconv... 是的 ****************************************************** ************************ 重要提示:

使用 libxml2-2.9.2 的打包版本构建 Nokogiri 应用了以下补丁: - 0001-Revert-Missing-initialization-for-the-catalog-module.patch - 0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch

Nokogiri 团队将继续尽最大努力提供安全保障 及时更新,但如果这对您来说是一个问题并且想要 改为使用系统库;中止此安装过程并 重新安装 nokogiri 如下:

gem install nokogiri -- --use-system-libraries
    [--with-xml2-config=/path/to/xml2-config]
    [--with-xslt-config=/path/to/xslt-config]

如果您使用的是 Bundler,请告诉它使用选项:

bundle config build.nokogiri --use-system-libraries
bundle install

但是请注意,nokogiri 不完全兼容任意 操作系统/软件包供应商提供的 libxml2 版本。 ****************************************************** ************************ 将 libxml2-2.9.2.tar.gz 提取到 tmp/x86_64-apple-darwin14.1.0/ports/libxml2/2.9.2... OK 运行补丁 和 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxml2/0001-Revert-Missing-initialization-for-the-catalog-module.patch... 为 libxml2 2.9.2 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxml2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch。 .. 为 libxml2 2.9.2 运行“补丁”... OK 运行“配置”为 libxml2 2.9.2 ... OK 为 libxml2 2.9.2 运行“编译”... OK Running libxml2 2.9.2 的“安装”... OK 激活 libxml2 2.9.2(来自 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/x86_64-apple-darwin14.1.0/libxml2/2.9.2)... ****************************************************** ************************ 重要提示:

使用 libxslt-1.1.28 的打包版本构建 Nokogiri 应用了以下补丁: - 0001-添加-doc-update-related-to-1.1.28.patch - 0002-Fix-a-couple-of-places-where-f-printf-parameters-wer.patch - 0003-初始化-伪随机数-生成器-with-curre.patch - 0004-EXSLT-function-str-replace-is-broken-as-is.patch - 0006-Fix-str-padding-to-work-with-UTF-8-strings.patch - 0007-单独的函数-for-predicate-matching-in-patterns.patch - 0008-Fix-direct-pattern-matching.patch - 0009-Fix-certain-patterns-with-predicates.patch - 0010-修复-处理-的-UTF-8-strings-in-EXSLT-crypto-module.patch - 0013-内存泄漏-xsltCompileIdKeyPattern-error-path.patch - 0014-修复错误-436589.patch - 0015-Fix-mkdir-for-mingw.patch

Nokogiri 团队将继续尽最大努力提供安全保障 及时更新,但如果这对您来说是一个问题并且想要 改为使用系统库;中止此安装过程并 重新安装 nokogiri 如下:

gem install nokogiri -- --use-system-libraries
    [--with-xml2-config=/path/to/xml2-config]
    [--with-xslt-config=/path/to/xslt-config]

如果您使用的是 Bundler,请告诉它使用选项:

bundle config build.nokogiri --use-system-libraries
bundle install

**************************************************** ************************* 将 libxslt-1.1.28.tar.gz 解压到 tmp/x86_64-apple-darwin14.1.0/ports/libxslt/1.1.28... OK 运行补丁 和 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0001-Adding-doc-update-related-to-1.1.28.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0002-Fix-a-couple-of-places-where-f-printf-parameters- wer.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0003-Initialize-pseudo-random-number-generator-with-curre.patch ... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0004-EXSLT-function-str-replace-is-broken-as-is.patch。 .. 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0006-Fix-str-padding-to-work-with-UTF-8-strings。修补... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0007-Separate-function-for-predicate-matching-in-patterns.patch ... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0008-Fix-direct-pattern-matching.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0009-Fix-certain-patterns-with-predicates.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0010-Fix-handling-of-UTF-8-strings-in-EXSLT-crypto-模块.补丁... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0013-Memory-leak-in-xsltCompileIdKeyPattern-error-path.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0014-Fix-for-bug-436589.patch... 为 libxslt 1.1.28 运行“补丁”... OK 运行补丁 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/patches/libxslt/0015-Fix-mkdir-for-mingw.patch ... 为 libxslt 1.1.28 运行“补丁”... OK 运行“配置”为 libxslt 1.1.28 ... OK 为 libxslt 1.1.28 运行“编译”... OK 为 libxslt 1.1.28 运行“安装”... OK 激活 libxslt 1.1.28 (从 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports/x86_64-apple-darwin14.1.0/libxslt/1.1.28)... 检查 -llzma 中的 main()... 是 检查 xmlParseDoc() libxml/parser.h... 是的,检查 xsltParseStylesheetDoc() libxslt/xslt.h... 是的,检查 exsltFuncRegister() libexslt/exslt.h... 是检查 xmlHasFeature()... 是检查 对于 xmlFirstElementChild()... 是的,正在检查 xmlRelaxNGSetParserStructuredErrors()...是检查 xmlRelaxNGSetParserStructuredErrors()...是检查 xmlRelaxNGSetValidStructuredErrors()...是检查 xmlSchemaSetValidStructuredErrors()...是检查 xmlSchemaSetParserStructuredErrors()...是的,正在创建 Makefile

使“DESTDIR=”干净

make "DESTDIR=" 编译 html_document.c 编译 html_element_description.c 编译 html_entity_lookup.c 编译 html_sax_parser_context.c 编译 html_sax_push_parser.c 编译 nokogiri.c 编译 xml_attr.c 编译 xml_attribute_decl.c 编译 xml_cdata.c 编译 xml_comment.c 编译 xml_document.c 正在编译 xml_document_fragment.c 正在编译 xml_dtd.c 正在编译 xml_element_content.c 编译 xml_element_decl.c 编译 xml_encoding_handler.c 编译 xml_entity_decl.c 编译 xml_entity_reference.c 编译 xml_io.c 编译 xml_libxml2_hacks.c 编译 xml_namespace.c 编译 xml_node.c xml_node.c:168:15:警告:14 个枚举值未处理 开关:'XML_ATTRIBUTE_NODE','XML_ENTITY_NODE', 'XML_DOCUMENT_NODE'... [-Wswitch] 开关(reparentee->类型){ ^ xml_node.c:186:15:警告:15 个枚举值未在开关中处理:“XML_ATTRIBUTE_NODE”、“XML_ENTITY_NODE”、 'XML_DOCUMENT_NODE'... [-Wswitch] 开关(reparentee->类型){ ^ xml_node.c:197:15:警告:19 个枚举值未在开关中处理:“XML_ELEMENT_NODE”、“XML_ATTRIBUTE_NODE”、 'XML_CDATA_SECTION_NODE'... [-Wswitch] 开关(reparentee->类型){ ^ xml_node.c:165:13:警告:14 个枚举值未在开关中处理:'XML_CDATA_SECTION_NODE'、'XML_ENTITY_NODE'、 'XML_PI_NODE'... [-Wswitch] 开关(父->类型){ ^ 4 个警告生成。正在编译 xml_node_set.c 正在编译 xml_processing_instruction.c 正在编译 xml_reader.c 正在编译 xml_relax_ng.c 编译 xml_sax_parser.c 编译 xml_sax_parser_context.c 编译 xml_sax_push_parser.c 编译 xml_schema.c 编译 xml_syntax_error.c 编译 xml_text.c 编译 xml_xpath_context.c 编译 xslt_stylesheet.c xslt_stylesheet.c:217:21:警告:指向整数的指针不兼容 将“void ”转换为“VALUE”类型的参数(又名 'unsigned long') [-Wint-conversion] Data_Get_Struct(ctxt->style->_private, nokogiriXsltStylesheetTuple, ^~~~~~~~~~~~~~~~~~~~~ /Users/jasonyang/.rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/ruby.h :1044:41: 注意:从宏“Data_Get_Struct”扩展而来 ((sval) = (type)rb_data_object_get(obj)) ^ /Users/jasonyang/.rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/ruby.h:1189:26: 注意:在此处将参数传递给参数“obj” rb_data_object_get(值对象) ^ xslt_stylesheet.c:230:21: 警告:指向整数转换的不兼容指针将“void ”传递给 “VALUE”类型的参数(又名“unsigned long”)[-Wint-conversion] Data_Get_Struct(ctxt->style->_private, nokogiriXsltStylesheetTuple, ^~~~~~~~~~~~~~~~~~~~~ /Users/jasonyang/.rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/ruby.h :1044:41: 注意:从宏“Data_Get_Struct”扩展而来 ((sval) = (type)rb_data_object_get(obj)) ^ /Users/jasonyang/.rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/ruby.h:1189:26: 注意:在此处将参数传递给参数“obj” rb_data_object_get(值对象) ^ 2 个警告生成。链接共享对象 nokogiri/nokogiri.bundle ld:警告:找不到选项的目录 '-L/Users/haven/.sm/pkg/active/lib' 清理文件只在 建造。 rm -rf /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ext/nokogiri/tmp/x86_64-apple-darwin14.1.0/ports rmdir -p /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ext/nokogiri/tmp/x86_64-apple-darwin14.1.0 rm -rf /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2/ports

make "DESTDIR=" install make: /usr/local/bin/gmkdir: 没有这样的文件或 目录制作:*** [.RUBYARCHDIR.-.nokogiri.time] 错误 1

make install 失败,退出代码 2

Gem 文件将继续安装在 /Users/jasonyang/.rvm/gems/ruby-2.2.0/gems/nokogiri-1.6.6.2 检查。结果记录到 /Users/jasonyang/.rvm/gems/ruby-2.2.0/extensions/x86_64-darwin-14/2.2.0-static/nokogiri-1.6.6.2/gem_make.out

【问题讨论】:

  • 我也有同样的问题,我想我们应该关注错误日志: make: /usr/local/bin/gmkdir: No such file or directory make: *** [.RUBYARCHDIR.- .nokogiri.time] 错误 1 ​​就我而言,这是 ruby​​-2.2.1 特有的问题,因为在 2.2.0 中,相同版本的 nokogiri 安装得很好。
  • 确实 rvm ruby​​ 可执行文件已损坏,我通过 rvm remove 解决了这个问题并重新安装了 2.2.1

标签: ruby-on-rails ruby macos installation


【解决方案1】:

您需要安装 coreutils 来解决此问题。

使用 MacPorts:

sudo port install coreutils

对于自制软件:

sudo brew install coreutils

【讨论】:

    猜你喜欢
    • 2015-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多