2016-11-19 151 views
0

任何时候,我尝试运行gem命令任何RVM gem命令的结果,我的控制台吐出几个SSL错误,未能正确执行(例如创业板安装XXX)。OpenSSL中的错误

SSL错误:

[email protected]:~/code/quotr$ gem install bundler 
Error loading RubyGems plugin "/home/brandon/.rvm/gems/[email protected]/gems/executable-hooks-1.3.2/lib/rubygems_plugin.rb": /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so: symbol SSLv2_method, version OPENSSL_1.0.0 not defined in file libssl.so.1.0.0 with link time reference - /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so (LoadError) 
Error loading RubyGems plugin "/home/brandon/.rvm/gems/[email protected]/gems/gem-wrappers-1.2.7/lib/rubygems_plugin.rb": /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so: symbol SSLv2_method, version OPENSSL_1.0.0 not defined in file libssl.so.1.0.0 with link time reference - /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so (LoadError) 
ERROR: Loading command: install (LoadError) 
    /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so: symbol SSLv2_method, version OPENSSL_1.0.0 not defined in file libssl.so.1.0.0 with link time reference - /home/brandon/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-linux/openssl.so 
ERROR: While executing gem ... (NoMethodError) 
    undefined method `invoke_with_build_args' for nil:NilClass 

RVM信息:

ruby-2.3.1: 

    system: 
    uname:  "Linux ox 3.13.0-101-generiC#148-Ubuntu SMP Thu Oct 20 22:08:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux" 
    system:  "debian/jessie_sid/x86_64" 
    bash:  "/bin/bash => GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)" 
    zsh:   " => not installed" 

    rvm: 
    version:  "rvm 1.27.0 (master) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]" 
    updated:  "1 day 1 hour 38 minutes 21 seconds ago" 
    path:   "/home/brandon/.rvm" 

    ruby: 
    interpreter: "ruby" 
    version:  "2.3.1p112" 
    date:   "2016-04-26" 
    platform:  "x86_64-linux" 
    patchlevel: "2016-04-26 revision 54768" 
    full_version: "ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]" 

    homes: 
    gem:   "/home/brandon/.rvm/gems/ruby-2.3.1" 
    ruby:   "/home/brandon/.rvm/rubies/ruby-2.3.1" 

    binaries: 
    ruby:   "/home/brandon/.rvm/rubies/ruby-2.3.1/bin/ruby" 
    irb:   "/home/brandon/.rvm/rubies/ruby-2.3.1/bin/irb" 
    gem:   "/home/brandon/.rvm/rubies/ruby-2.3.1/bin/gem" 
    rake:   "/home/brandon/.rvm/rubies/ruby-2.3.1/bin/rake" 

    environment: 
    PATH:   "/home/brandon/.rvm/bin:/home/brandon/gopath:/home/brandon/gopath/bin:/home/brandon/.rvm/gems/ruby-2.3.1/bin:/home/brandon/.rvm/gems/[email protected]/bin:/home/brandon/.rvm/rubies/ruby-2.3.1/bin:/home/brandon/gopath:/home/brandon/gopath/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin:/usr/local/bin/aws/bin:/home/brandon/.rvm/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin:/usr/local/bin/aws/bin" 
    GEM_HOME:  "/home/brandon/.rvm/gems/ruby-2.3.1" 
    GEM_PATH:  "/home/brandon/.rvm/gems/ruby-2.3.1:/home/brandon/.rvm/gems/[email protected]" 
    MY_RUBY_HOME: "/home/brandon/.rvm/rubies/ruby-2.3.1" 
    IRBRC:  "/home/brandon/.rvm/rubies/ruby-2.3.1/.irbrc" 
    RUBYOPT:  "" 
    gemset:  "" 

我甚至尝试升级到最新版本的OpenSSL为了解决这个问题,但没有骰子。

[email protected]:~$ openssl version 
OpenSSL 1.1.0c 10 Nov 2016 

我的红宝石正确地指向正确的,我已经验证路径:

[email protected]:~$ which ruby 
/home/brandon/.rvm/rubies/ruby-2.3.1/bin/ruby 
[email protected]:~$ cd /home/brandon/.rvm/rubies/ruby-2.3.1/bin 
[email protected]:~/.rvm/rubies/ruby-2.3.1/bin$ ls 
erb gem irb rake rdoc ri ruby 
[email protected]:~/.rvm/rubies/ruby-2.3.1/bin$ ls -la 
total 176 
drwxrwxr-x 2 brandon brandon 4096 Nov 18 13:31 . 
drwxrwxr-x 6 brandon brandon 4096 Nov 18 13:31 .. 
-rwxrwxr-x 1 brandon brandon 4842 Nov 18 13:31 erb 
-rwxrwxr-x 1 brandon brandon 546 Nov 18 13:31 gem 
-rwxrwxr-x 1 brandon brandon 190 Nov 18 13:31 irb 
-rwxrwxr-x 1 brandon brandon 487 Nov 18 13:31 rake 
-rwxrwxr-x 1 brandon brandon 938 Nov 18 13:31 rdoc 
-rwxrwxr-x 1 brandon brandon 188 Nov 18 13:31 ri 
-rwxrwxr-x 1 brandon brandon 142504 Nov 18 13:31 ruby 

我一直在敲打我的头这在过去的一周,因此任何建议,将不胜感激。我已经成功地运行这一操作系统红宝石堆了好几个月,但必须重新安装因硬盘驱动器故障,我似乎无法让过去这个问题。

有没有办法迫使RVM使用不同的SSL版本?它似乎是指向一个较旧的版本。

+0

另请参阅[使用rbenv构建ruby,并使用未定义符号构建ruby-build失败:SSLv2_method](http://stackoverflow.com/q/36286437),[未定义符号:运行bundle安装时的SSLv2_method](http:// stackoverflow.com/q/12759518),[导轨LoadError与openssl.so:未定义的符号:d2i_ECPKParameters](http://stackoverflow.com/q/9732591),[Ubuntu和用于SSLv2_method未定义的符号](HTTP://计算器.COM/q/8206546),等... – jww

回答

0

尝试重新安装OpenSSL的。你应该完全删除旧installation.Run此命令:

apt-get autoremove && apt-get autoclean

然后,下载并编译:

wget https://www.openssl.org/source/openssl-1.1.0c.tar.gz 

如果仍不能正常工作,尝试重新安装RVM。

rvm implode 
gem uninstall rvm 

rvm implode将卸载rvm/目录并从中建立了所有的红宝石。

\curl -sSL https://get.rvm.io | bash -s stable 

最后,重新安装红宝石:

rvm install 2.3.1 

希望它能帮助。

+0

不幸的是我已经这样做了,谢谢你的建议,但。 – gwnp