【问题标题】:Error running 'bundle install' using Ruby 1.9.3使用 Ruby 1.9.3 运行“捆绑安装”时出错
【发布时间】:2012-03-09 21:04:40
【问题描述】:

我正在阅读第二版 Ruby on Rails 教程 (http://ruby.railstutorial.org/)。我正在执行每一步,所以我使用的是 Ruby 1.9.3,当我在我的 Rails 项目中运行“捆绑安装”时,我出现了一个错误,其中有大量的错误痕迹,该错误由此开始:

/Users/sebasoga/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/net/http.rb:799: [BUG] 分割错误 ruby​​ 1.9.3p125 (2012-02 -16 修订版 34643) [x86_64-darwin10.8.0]

我现在使用的是 Ruby 1.9.2,它运行良好,但它不应该也适用于 Ruby 1.9.3 吗?

【问题讨论】:

标签: bundler gemfile ruby-1.9.3


【解决方案1】:

如果您正在运行 1.9.3 和 xcode 4.2 中的包,似乎存在问题? 在 SO 上的某个地方发现,回到 4.1 是一个修复。我住的是 1.9.2

【讨论】:

    【解决方案2】:

    这个对我有用:

    rvm pkg install iconv
    rvm pkg install openssl
    rvm reinstall 1.9.3 --with-openssl-dir=~/.rvm/usr --with-iconv-dir=~/.rvm/usr
    

    它基于this blog 的解决方案。我还尝试了一个here,它基于macports,但它没有工作。但老实说,我并不关心更新我的 macport,所以也许这就是它不起作用的原因。

    我还发现了另外两个描述问题并给出建议的问题:40504766

    【讨论】:

    • 我跟着兔子洞先尝试了其他一些方法,但最终将 openssl 作为 rvm pkg 安装对我来说也很有效。如果您不使用 iconv,请忽略该安装。如果您的 rvm 安装在不寻常的位置,您可能还想使用 $rvm_path/usr。
    • 这与 ssl/tls 问题无关,但是在使用 XCode 4.2 在 Lion 上构建 ruby​​ 时,我还需要在 stackoverflow.com/questions/8032824/… 的每个线程中添加 --with-gcc=clang(编辑 3接受的答案)
    【解决方案3】:

    在我的 Gemfile 中,替换

    source 'https://rubygems.org'
    

    这一行与

    source 'http://rubygems.org'
    

    解决了这个问题。希望这会有所帮助!

    【讨论】:

    • 谢谢!它正在寻找 OpenSSL,但发布者没有安装 Ruby 的那个包,因此接受了答案。但是,通过将 https 替换为 http,您可以完全消除对 OpenSSL 的需求,而无需重新编译 Ruby。
    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2012-07-23
    • 1970-01-01
    • 2016-03-15
    • 2013-06-16
    相关资源
    最近更新 更多