gpt4 book ai didi

ruby-on-rails-3 - 无法修复 'bundle install' 对于带有 native 扩展的 gem 失败

转载 作者:行者123 更新时间:2023-12-04 14:18:03 25 4
gpt4 key购买 nike

我正在 Amazon EC2 云服务器上部署 Ruby On Rails 应用程序。服务器在 Amazon Linux alami-2011.02 上运行。我不能说它所基于的发行版(来自我的搜索,RedHat/CentOS,但我是该领域的新手)。

我已经用 RVM 安装了我的 Ruby 环境(以 root 身份安装)。我已经设置了两个 ruby :

  • 稀土元素 1.8.7
  • ruby 1.9.2-p290

  • 对于我部署的每个 Rails 应用程序,我创建了一个单独的 RVM gemset。

    由于我遇到了这个问题,我通过运行 rvm implode 完全刷新了 Ruby 环境。 .

    这是我的环境版本:
    ruby -v      ---> ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
    rvm -v ---> 1.8.1
    gem -v ---> 1.6.2
    bundle -v ---> Bundler version 1.0.18

    在此之后 rvm implode :
  • 我再次安装了 2 个 ruby
  • 我为 ree-1.8.7 应用程序创建了一个 gemset 并安装了所需的 gems -> 没问题
  • 我为 ruby​​-1.9.2 应用程序创建了一个 gemset 并通过 Bundle -> 安装了 gems没问题,即使对于带有 native 扩展的 gem
  • 我为另一个 ruby​​-1.9.2 创建了一个 gemset,尝试通过 Bundle 安装 gem... 又来了!

  • 这是我在表演 bundle install 时所知道的(以 root 身份登录):
    Updating https://github.com/p7r/will_paginate.git
    Fetching source index for http://rubygems.org/
    Installing rake (0.9.2)
    Installing multi_json (1.0.3)
    Installing activesupport (3.1.0)
    Installing bcrypt-ruby (3.0.0) with native extensions /usr/local/rvm/scripts/rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

    /usr/local/rvm/scripts/rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb

    Gem files will remain installed in /usr/local/rvm/scripts/rvm/gems/ruby-1.9.2-p290@app/gems/bcrypt-ruby-3.0.0 for inspection.
    Results logged to /usr/local/rvm/scripts/rvm/gems/ruby-1.9.2-p290@app/gems/bcrypt-ruby-3.0.0/ext/mri/gem_make.out

    [ removed the backtrace ]

    但是,如果我只使用 gem install bcrypt , gem 安装正确,我可以使用 bundle install它将一直运行到下一个带有 native 扩展的 gem ......

    我在安装 ruby​​-1.9.2-p180 时遇到了同样的问题,我尝试将 RubyGems 降级到不同的版本,直到 1.5.3,我的 RVM 崩溃了......我在网上看了很多答案,这个问题似乎反复出现,但对我来说没有任何效果。

    在此先感谢您的帮助!

    最佳答案

    这可能是由于用于编译 native 扩展的内存不足。根据我的经验,bundle install比简单地使用 gem install 占用更多内存.看看/var/log/messages并查看是否存在任何此类问题。另外,使用 top识别任何重量级进程,例如同事离开 rails console在屏幕 session 中运行。 ;)

    关于ruby-on-rails-3 - 无法修复 'bundle install' 对于带有 native 扩展的 gem 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7331092/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com