【问题标题】:Can't install bcrypt-ruby for new Rails installation无法为新的 Rails 安装安装 bcrypt-ruby
【发布时间】:2012-09-20 23:22:30
【问题描述】:

我在安装新的 Rails 时遇到以下错误。我运行 bundle install 并在安装了一堆 gem 之后,尝试安装 bcrypt-ruby 时出现错误。我正在使用带有 OS X 10.8.2、最新 Ruby (v1.9.3-p194)、新 Rails (v3.2.8) 和标准 Gemfile 的全新 Mac。

安装 activerecord (3.2.8)

安装 activeresource (3.2.8)

使用原生扩展安装 bcrypt-ruby (3.0.1)

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native 扩展名。

    /Users/me/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb  creating Makefile

make 编译 bcrypt_ext.c make: /usr/bin/gcc-4.2: No such file or 目录制作:* [bcrypt_ext.o] 错误 1

Gem 文件将继续安装在 /Users/me/.rvm/gems/ruby-1.9.3-p194@mygemset/gems/bcrypt-ruby-3.0.1 供检查。结果记录到 /Users/me/.rvm/gems/ruby-1.9.3-p194@mygemset/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out 安装 bcrypt-ruby (3.0.1) 和 Bundler 时出错 无法继续。确保gem install bcrypt-ruby -v '3.0.1' 在捆绑之前成功。

更新:忘了说,这不仅是一台带有 Mac OS X 10.8.2 的全新 Mac,还包括昨天安装的全新 Xcode 和命令行工具。然后我安装了 RVM 和 brew。

【问题讨论】:

标签: rubygems gem ruby-on-rails-3.2 bcrypt bcrypt-ruby


【解决方案1】:

自从您安装 Ruby 1.9.3 后,您是否已升级到 Lion?如果是这样,它可能链接到错误的 gcc。

尝试卸载并重新安装 1.9.3,我建议使用 rvm

rvm uninstall 1.9.3
rvm install 1.9.3

如果这不起作用,您可能不得不内爆 rvm

rvm implode
bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
source ~/.bash_profile
rvm install 1.9.3

【讨论】:

  • 在我看来,您的系统上没有 make。如果您使用的是 Mac,则需要安装 Xcode 命令行工具。
  • 更新了问题以说明已安装 Xcode 命令行工具。
  • 如果你要复制/粘贴别人的答案,至少要感谢stackoverflow.com/a/9084811/442695
【解决方案2】:

在全新的 Mac 上似乎很奇怪,我需要安装新的操作系统和新的 RVM 来执行此操作.. 但有效的方法是将 gcc-4.2 简单地链接到 gcc:

sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2

【讨论】:

    【解决方案3】:

    对我来说,以下工作

    gem uni bcrypt-ruby
    gem i bcrypt-ruby --platform=ruby
    

    【讨论】:

      猜你喜欢
      • 2015-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-17
      • 2018-06-04
      • 2020-03-31
      • 1970-01-01
      相关资源
      最近更新 更多