【问题标题】:The 'json' native gem requires installed build tools“json”原生 gem 需要安装构建工具
【发布时间】:2011-12-27 09:42:32
【问题描述】:

我的 Windows 7 机器上安装了 ruby 1.9.2p180 (2011-02-18) [i386-mingw32]。现在我尝试使用命令“gem install json”安装 JSON gem,并收到以下错误。

ERROR:  Error installing JSON:
    The 'json' native gem requires installed build tools.

Please update your PATH to include build tools or download the DevKit
from '[http://rubyinstaller.org/downloads][1]' and follow the instructions
at '[http://github.com/oneclick/rubyinstaller/wiki/Development-Kit][2]'

然后我去下载了 DevKit-4.5.0-20100819-1536-sfx.exe。将其解压缩到 C:\DevKit。然后在命令提示符下,我执行了以下命令。

ruby dk.rb init

执行上述命令后,我验证生成了 config.yaml 并自动添加了我的 ruby​​ 文件夹的路径。这是 config.yaml 文件“-C:/Ruby192”底部的行

ruby dk.rb review

我收到消息说,当您运行“ruby dk.rb install”时,devkit 功能将被注入到 rubies 中

ruby dk.rb install

我收到以下消息。

[INFO] RubyGems override already in place for C:/Ruby192, skipping.
[INFO] Installing C:/Ruby192/lib/ruby/site_ruby/devkit.rb

现在我尝试使用命令 gem install json 再次执行 JSON gem。然后得到了和以前一样的错误信息。

ERROR:  Error installing JSON:
    The 'json' native gem requires installed build tools.........

我错过了什么吗?

【问题讨论】:

    标签: ruby json windows-7 rubygems


    【解决方案1】:

    关注Instructions from the Ruby Installer Developer Kit Wiki

    1. rubyinstaller.org下载Ruby 1.9.3
    2. rubyinstaller.org 下载 DevKit 文件
    3. 将 DevKit 解压到路径 C:\Ruby193\DevKit
    4. 运行cd C:\Ruby193\DevKit
    5. 运行ruby dk.rb init
    6. 运行ruby dk.rb review
    7. 运行ruby dk.rb install

    回到手头的问题,您应该能够通过运行以下命令来安装 JSON(或以其他方式测试您的 DevKit 是否已成功安装),这将执行 JSON gem 的安装然后使用它:

    gem install json --platform=ruby
    ruby -rubygems -e "require 'json'; puts JSON.load('[42]').inspect"
    

    【讨论】:

    • 想补充一点,您需要确保您使用的任何提示都具有管理员权限,否则您将在安装过程中遇到错误(至少是 win8)
    • 为我工作了 //Ruby 1.9.3-p194// ...“陷阱”似乎是 DevKit 必须是您的 Ruby 目录的子目录...或者也许就是这样您的 Ruby 目录必须位于驱动器的根目录中。呸,很高兴那行得通。这让我发疯了好几个小时。
    • 对我也有用,记得把 DevKit 文件夹放在 ruby​​ 文件夹中。否则它将无法正常工作。
    • 1.9.3 p0 不再存在于下载中。也许你应该提到使用任何 1.9.3 (如果它确实有效,那就是)。它对我有用。
    • 也适用于 Ruby 2.0。
    【解决方案2】:

    我相信那些安装程序会更改路径。您是否尝试在运行 CMD 窗口之后以及在最后一次尝试安装需要 devkit 的 gem 之前关闭并重新打开它们?

    另外,请确保您为您的 Ruby 版本使用了正确的 devkit 安装程序。 devkit wiki 页面上的文档有一个要求说明:

    对于 RubyInstaller 版本 1.8.7、1.9.2 和 1.9.3,请使用 DevKit 4.5.2

    【讨论】:

    • 嗨 Chuck van,我关闭了 CMD 窗口并再次打开它并运行“gem install json”。它也没有帮助。仍然与我在问题中提到的错误相同。我什至尝试在我们办公室的另一台 Windows 2003 机器上安装 ruby​​ 1.9.2,安装 devkit,然后尝试“gem install json”。我看到了同样的问题。 (“错误:安装 json 时出错:'json' 本机 gem 需要安装构建工具......”)。还有其他建议吗?您需要我提供更多信息吗?
    • 正如我在问题中已经提到的,我正在使用“DevKit-4.5.0-20100819-1536-sfx.exe”。我相信这是与 Ruby1.9.2 一起使用的正确 devkit。
    • 您是否按照此页面上的所有说明进行操作? github.com/oneclick/rubyinstaller/wiki/Development-Kit。 devkit 是一个自解压存档,如果您所做的只是运行下载的文件,那么您只是安装它的一部分。
    • 是的。我确实遵循了所有的指示。最后我让它工作了。我尝试使用“DevKit-tdm-32-4.5.2-20110712-1620-sfx.exe”而不是“DevKit-4.5.0-20100819-1536-sfx.exe”,它对我有用。感谢您对查克范的所有支持。
    • 我按照说明进行操作,它对我有用。 C:\DevKit>gem install json 临时增强 PATH 以包含 DevKit... 构建原生扩展。这可能需要一段时间... 已成功安装 json-1.8.1 1 个 gem 安装 为 json-1.8.1 安装 ri 文档... 为 json-1.8.1 安装 RDoc 文档...
    【解决方案3】:

    我发现错误有时是由缺少库引起的。

    所以如果你先安装 RDOC 通过运行

    gem 安装 rdoc

    然后安装导轨:

    gem 安装导轨

    然后返回并安装之前提到的开发工具:

    1) 将 DevKit 提取到路径 C:\Ruby193\DevKit
    2) cd C:\Ruby192\DevKit
    3) ruby dk.rb init
    4) ruby dk.rb review
    5)ruby dk.rb install

    然后尝试安装 json

    最终你终于可以跑步了

    rails new project_name - 没有错误。

    祝你好运

    【讨论】:

      【解决方案4】:

      按照步骤进行。

      1. 提取DevKit 到路径C:\Ruby193\DevKit
      2. cd C:\Ruby192\DevKit
      3. ruby dk.rb init
      4. ruby dk.rb review
      5. ruby dk.rb install

      然后我写了命令

      gem install rails -r -y
      

      【讨论】:

      • 我是用 gem install devkit 安装的,那个方法错了吗?
      【解决方案5】:

      1) 下载 Ruby 1.9.3

      2) cmd 检查命令:ruby -v'return result ruby​​ 1.9.3 then success full install ruby​​

      3) 从http://rubyinstaller.org/downloads 下载 DevKit 文件 (DevKit-tdm-32-4.5.2-20110712-1620-sfx.exe)

      4) 将 DevKit 解压到路径 C:\Ruby193\DevKit

      5)cd C:\Ruby193\DevKit

      6)ruby dk.rb init

      7) ruby dk.rb review

      8) ruby dk.rb install

      9) cmd : gem install rails -v3.1.1 '很少时间安装完整进程'

      10) cmd : rails -v 'return result rails 3.1.1 then its success full install'

      享受 Ruby on Rails...

      【讨论】:

      • 这是唯一适用于 Windows 7 上的 Ruby 1.9.3 的解决方案。
      • 是的,它仅适用于 Windows 7
      • 是的兄弟,它也适用于 windows 7 和 Ruby /DevKit 2.3.x
      【解决方案6】:

      我想补充一点,您应该确保在执行 ruby dk.rb init 时生成的 config.yml 文件包含您要使用 DevKit 的 ruby​​ 安装路径。就我而言,我的系统上安装了 Heroku Toolbelt,它提供了自己的 ruby​​ 安装,位于不同的位置。 config.yml 文件使用了那个特定的安装,这不是我想要的。我必须手动编辑文件以将其指向正确的文件,然后继续使用ruby dk.rb review 等。

      【讨论】:

        【解决方案7】:

        我的解决方案更简单,并且在 Ruby 2.0 上进行了检查。它还启用了下载 Json。 (以管理员身份运行 CMD.exe)

            C:\RubyDev>devkitvars.bat
            Adding the DevKit to PATH...
        

        然后再写一次gem命令。

        【讨论】:

          【解决方案8】:

          我的 gem 版本 2.0.3 和我遇到了同样的问题。 这个命令解决了它:

          gem install json --platform=ruby --verbose
          

          【讨论】:

          • 天哪,我一直在寻找解决这个问题的方法,并且做到了。干得好,投赞成票:-)
          猜你喜欢
          • 1970-01-01
          • 2014-09-23
          • 2013-07-04
          • 1970-01-01
          • 2013-03-09
          • 2016-08-14
          • 2015-06-17
          • 1970-01-01
          • 2015-06-27
          相关资源
          最近更新 更多