OpenSSL无法使用gem rubygems或brew或bundle加载库 [英] OpenSSL can't load library with gem rubygems or brew or bundle
问题描述
我使用brew 0.9.5,在安装了rbenv 0.4.0和ruby-build之后,安装了ruby 2.1.2。
一段时间,并在几个osx更新后:
包
给出:
/ usr / local / Cellar / rbenv / versions / 2.1.2 / lib / ruby / site_ruby / 2.1.0 / rubygems / core_ext / kernel_require.rb:54:在'require'中:dlopen(/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/ 2.1.0 / x86_64-darwin13.0 / digest / sha1.bundle,9):未加载库:@@ HOMEBREW_PREFIX @@ / opt / openssl / lib / libcrypto.1.0.0.dylib(LoadError)
引用from:/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/digest/sha1.bundle
原因:image not found - / usr / local /Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/digest/sha1.bundle
来自/usr/local/Cellar/rbenv/versions/2.1.2/ lib / ruby / site_ruby / 2.1.0 / rubygems / core_ext / kernel_require.rb:54:在'require'
从/ usr / local / Cellar / rben v / versions / 2.1.2 / lib / ruby / gems / 2.1.0 / gems / bundler-1.6.3 / lib / bundler / definition.rb:1:在< top(required)>'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler.rb:153:in`definition'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli/install.rb:76:in`run '/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli.rb:146:in'中的
从/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/command安装
.rb:27:在'run'中
来自/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler /vendor/thor/invocation.rb:121:in`invoke_command'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6 .3 / lib / bundler / vendor / thor.rb:363:在`dispatch'
/usr/local/Cellar/rbenv/versions/2.1.2/lib/r uby / gems / 2.1.0 / gems / bundler-1.6.3 / lib / bundler / vendor / thor / base.rb:440:在`开始'
从/ usr / local / Cellar / rbenv / versions / 2.1.2 / lib / ruby / gems / 2.1.0 / gems / bundler-1.6.3 / lib / bundler / cli.rb:9:在'start'中$ b $来自/ usr / local / Cellar / rbenv /版本/ 2.1.2 / lib / ruby / gems / 2.1.0 / gems / bundler-1.6.3 / bin / bundle:20:在<顶部(必填)>块中的
/ usr /local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/friendly_errors.rb:5:in`with_friendly_errors'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/bin/bundle:20:in`< top(required)>' $ / b / b /usr/local/Cellar/rbenv/versions/2.1.2/bin/bundle:23:in`load'
from /usr/local/Cellar/rbenv/versions/2.1.2/ bin / bundle:23:在< main>'
我尝试了brew卸载openssl&& amp ; brew安装openssl。
我尝试brew链接openssl --force。
我尝试升级所有内容。 / p>
到目前为止没有任何工作。
我无法启动美洲狮,捆绑或更新宝石。
gem update --system
错误:加载命令:update(LoadError)
dlopen(/ usr / local / Cellar / rbenv / versions / 2.1.2 / lib / ruby / 2.1.0 / x86_64-darwin13.0 / openssl.bundle,9):未加载库:@@ HOMEBREW_PREFIX @@ / opt / openssl / lib /libssl.1.0.0.dylib
引用自:/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
原因:未找到图像 - /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
错误:执行gem时。(NoMethodError)
未定义的方法`invoke_with_build_args'为零:NilClass
gem -v: 2.4.0
brew --env
HOMEBREW_CC:clang
HOMEBR EW_CXX:clang ++
MAKEFLAGS:-j4
CMAKE_PREFIX_PATH:/ usr / local
CMAKE_INCLUDE_PATH:/usr/include/libxml2:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers
CMAKE_LIBRARY_PATH:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries
PKG_CONFIG_LIBDIR:/usr/lib/pkgconfig:/usr/local/Library/ENV/pkgconfig/10.9
ACLOCAL_PATH:/ usr / local / share / aclocal
路径:/usr/local/Library/ENV/4.3:/usr/bin:/bin:/usr/sbin:/sbin
brew配置
HOMEBREW_VERSION:0.9.5
ORIGIN:https://github.com/Homebrew/homebrew.git
HEAD:49e6d09f85a999a4a4d82b2d47bd837ed342d8cb
HOMEBREW_PREFIX:/ usr / local
HOMEBREW_CELLAR:/ usr / local / Cellar
CPU:四核64位haswell
OS X:10.9.5-x86_64
CLT:6.0 .0.0.1.1410400753
锵:6.0 build 600
X11:2.7.6 => / opt / X11
系统Ruby:2.0.0-481
Perl:/ usr / bin / perl
Python:/ usr / bin / python
Ruby:/ usr / local / Cellar / rbenv / shims / ruby
brew uses --installed openssl
postgresql ruby-build
如果有人有线索,我会接受它!
不确定为什么以及如何:但是:
rbenv install 2.1.2
rbenv:/ usr / local / Cellar / rbenv / versions /2.1.2已存在
继续安装? (y / N)y
现在可以使用!刚刚必须重新安装我的红宝石,就像它重新链接openssl与它... ...
我现在可以再次工作,但只是让我知道更多的发生,如果有人知道内在的机制,我很乐意听到它。
I use brew 0.9.5, which with I installed rbenv 0.4.0 and ruby-build for a ruby 2.1.2.
Haven't touched anything since a while, and after few osx updates :
bundle
Gives :
/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require': dlopen(/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/digest/sha1.bundle, 9): Library not loaded: @@HOMEBREW_PREFIX@@/opt/openssl/lib/libcrypto.1.0.0.dylib (LoadError)
Referenced from: /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/digest/sha1.bundle
Reason: image not found - /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/digest/sha1.bundle
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/definition.rb:1:in `<top (required)>'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler.rb:153:in `definition'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli/install.rb:76:in `run'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli.rb:146:in `install'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/command.rb:27:in `run'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/invocation.rb:121:in `invoke_command'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor.rb:363:in `dispatch'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/base.rb:440:in `start'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli.rb:9:in `start'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/bin/bundle:20:in `block in <top (required)>'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/friendly_errors.rb:5:in `with_friendly_errors'
from /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/bin/bundle:20:in `<top (required)>'
from /usr/local/Cellar/rbenv/versions/2.1.2/bin/bundle:23:in `load'
from /usr/local/Cellar/rbenv/versions/2.1.2/bin/bundle:23:in `<main>'
I tried brew uninstall openssl && brew install openssl.
I tried brew link openssl --force.
I tried to upgrade everything.
Nothing had worked so far.
I can't launch puma, bundle or update gems.
gem update --system
ERROR: Loading command: update (LoadError)
dlopen(/usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle, 9): Library not loaded: @@HOMEBREW_PREFIX@@/opt/openssl/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
Reason: image not found - /usr/local/Cellar/rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass
gem -v : 2.4.0
brew --env
HOMEBREW_CC: clang
HOMEBREW_CXX: clang++
MAKEFLAGS: -j4
CMAKE_PREFIX_PATH: /usr/local
CMAKE_INCLUDE_PATH: /usr/include/libxml2:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers
CMAKE_LIBRARY_PATH: /System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries
PKG_CONFIG_LIBDIR: /usr/lib/pkgconfig:/usr/local/Library/ENV/pkgconfig/10.9
ACLOCAL_PATH: /usr/local/share/aclocal
PATH: /usr/local/Library/ENV/4.3:/usr/bin:/bin:/usr/sbin:/sbin
brew config
HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew.git
HEAD: 49e6d09f85a999a4a4d82b2d47bd837ed342d8cb
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: quad-core 64-bit haswell
OS X: 10.9.5-x86_64
CLT: 6.0.0.0.1.1410400753
Clang: 6.0 build 600
X11: 2.7.6 => /opt/X11
System Ruby: 2.0.0-481
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: /usr/local/Cellar/rbenv/shims/ruby
brew uses --installed openssl
postgresql ruby-build
If anyone have a clue... I'll take it !
Not sure why and how but :
rbenv install 2.1.2
rbenv: /usr/local/Cellar/rbenv/versions/2.1.2 already exists
continue with installation? (y/N) y
And now it works ! Just had to reinstall my ruby, like it did re-link openssl with it someway...
I can work again now, but just so I know more what happens, if someone know the under-the-hood mecanisms, I'll be glad to hear it.
这篇关于OpenSSL无法使用gem rubygems或brew或bundle加载库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!