【问题标题】:Rails does not work on LionRails 不适用于 Lion
【发布时间】:2012-04-20 07:16:44
【问题描述】:

我将我的 Mac OSX 版本更改为 Lion。但是我无法创建 Rails3 应用程序。

我使用 rvm 1.9.2 并选择 ruby​​ 1.9.2-p290 来创建 Rails 3 应用程序。

一切似乎都很好。当我开始创建一个新应用时

rails new new_my_app

我看到了这个错误,

Installing json (1.6.6) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /Users/ender/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb 
creating Makefile

make
sh: make: command not found


Gem files will remain installed in /Users/ender/.rvm/gems/ruby-1.9.2-p290/gems/json-1.6.6 for inspection.
Results logged to /Users/ender/.rvm/gems/ruby-1.9.2-p290/gems/json-1.6.6/ext/json/ext/generator/gem_make.out
An error occured while installing json (1.6.6), and Bundler cannot continue.
Make sure that `gem install json -v '1.6.6'` succeeds before bundling.

当我尝试时

gem install json -v '1.6.6'

我遇到了这个错误

Building native extensions.  This could take a while...
ERROR:  Error installing json:
    ERROR: Failed to build gem native extension.

        /Users/ender/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
creating Makefile

make
sh: make: command not found


Gem files will remain installed in /Users/ender/.rvm/gems/ruby-1.9.2-p290/gems/json-1.6.6 for inspection.
Results logged to /Users/ender/.rvm/gems/ruby-1.9.2-p290/gems/json-1.6.6/ext/json/ext/generator/gem_make.out

我应该怎么做才能解决这个问题?

谢谢。

【问题讨论】:

    标签: ruby-on-rails-3.1 osx-lion rvm


    【解决方案1】:

    您需要在 Xcode 4 for Lion 的首选项中安装“命令行工具”。

    【讨论】:

    • 这个和这个 --> stackoverflow.com/questions/9027772/… 终于让我的包再次工作了!
    • 这个链接对我来说是在一个新的 osx 山狮安装上工作的,它给了我这个错误。
    • 与@Catfish 相同。我的 Time Machine 在新 SSD 上恢复了操作系统,想到了命令行工具。它没有。已解决,谢谢!
    • 另外,安装命令行工具后一定要重启。希望它可以减轻别人的痛苦
    【解决方案2】:

    你需要安装 osx-gcc-installer

    如果您从 previoys 系统迁移 ruby​​,您需要重新安装 ruby​​ 和 gems:

    rvm reinstall 1.9.2
    rvm use 1.9.2
    rvm gemset pristine
    

    【讨论】:

      【解决方案3】:

      我遇到了这个问题,这为我解决了这个问题。我最近从旧系统迁移到新 iMac。

      我首先安装了 libksba。我不确定这是否有必要,但我想它不会受到伤害。我使用homebrew 所以这就是我所做的:

      brew install libksba
      

      然后,我更新了 rvm。

      rvm get head
      

      更新后提示我需要安装ruby-1.9.3-p194。

      rvm install ruby-1.9.3-p194
      

      安装了 1.9.3。我想要一些旧应用的 1.9.2,所以我重新安装了它。

      rvm reinstall 1.9.2
      

      最后,我安装了导致此问题的 json gem:

      gem install json -v '1.6.6'
      

      维奥拉!它安装正确。我做的最后一件事是运行 bundle,但它抱怨找不到这个:

      Could not find multi_json-1.3.1 in any of the sources
      

      我删除了 Gemfile.lock 并重新运行了包。

      rm Gemfile.lock
      bundle
      

      现在一切正常!

      【讨论】:

        【解决方案4】:

        最后我赢了。也许这可能是简短或简单的方法。你知道。 首先,我更新了 RVM,但在此之前,我从 appstore 为 Lion 安装了 Xcode 4。第二步是重新安装最新的 stabil ruby​​ 版本并创建我的 gemset。 最后,我将 rails 3.2 下载到我之前在 ruby​​ 上设置的 gem set 中。

        【讨论】:

          猜你喜欢
          • 2012-04-17
          • 1970-01-01
          • 1970-01-01
          • 2012-08-12
          • 1970-01-01
          • 1970-01-01
          • 2011-04-18
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多