【问题标题】:Upgraded to Yosemite and now ruby libraries are breaking升级到优胜美地,现在 ruby​​ 库正在崩溃
【发布时间】:2015-01-06 19:59:29
【问题描述】:

我升级到 Yosemite,现在当我尝试使用 rails new <appname> 设置初始 Rails 应用程序时,我收到一条错误消息:

/Users/****/.rubies/ruby-2.0.0-p451/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:54:in “要求”: dlopen(/Users/*****/.rubies/ruby-2.0.0-p451/lib/ruby/2.0.0/x86_64-darwin13.3.0/openssl.bundle, 9): 未找到符号:_SSLv2_client_method (LoadError)

我使用 homebrew 和 chruby 而不是 RVM,我的 shell 是 Oh-my-Zsh。

【问题讨论】:

    标签: ruby oh-my-zsh chruby


    【解决方案1】:

    我怀疑你在旧版本的 Mac OS X 上编译了 Ruby,它依赖于 OpenSSL 的 _SSLv2_client_method 函数。该功能非常旧(SSL v2 是一个旧协议),因此它可能已从 OpenSSL 中删除,升级您的操作系统可能会引入没有该功能的新版本的 OpenSSL。

    无论如何,您应该尝试删除整个 ~/.rubies 文件夹(或将其移动到新位置)并从头开始,根据 chruby Wiki 重新编译 Ruby。

    这是一个相关的问题,我通过谷歌搜索“_SSLv2_client_method ruby​​ mac”找到了这个问题:Ruby Bundle Symbol not found: _SSLv2_client_method (LoadError)

    【讨论】:

    • 那行得通。我想我现在唯一遇到的问题是我的捆绑器无法使用 bundle install 命令编译,因为 zsh 无法识别该命令。感谢您的帮助!
    • 重要提示:不要删除您的 usr/.rubies 文件夹。这是系统红宝石。我认为大卫的意思是用户/用户名/.rubies
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 2015-08-22
    • 2015-03-05
    • 2014-12-16
    • 1970-01-01
    相关资源
    最近更新 更多