无法加载此类文件 -- openssl (LoadError)
Posted
技术标签:
【中文标题】无法加载此类文件 -- openssl (LoadError)【英文标题】:cannot load such file -- openssl (LoadError) 【发布时间】:2013-02-13 02:29:54 【问题描述】:在 rvm 的 OS X 中,我如何检查 openssl 是否配置正确?
我得到cannot load such file -- openssl (LoadError)
我已经尝试了Rails 3 - no such file to load -- openssl 中的所有内容,但没有成功。
【问题讨论】:
2021 年最新解决方案:github.com/rvm/rvm/issues/4819#issuecomment-595644550 【参考方案1】:检查安装了哪些红宝石:
rvm list
然后确保使用已安装的 rubies 之一:
rvm use 1.9.3-p327
并测试openssl
是否可用:
ruby -ropenssl -e "puts :OK"
如果启用openssl
,它将打印OK
,否则会出现异常
异常情况下=>
更新:
新版本的 rvm 改进了自动化支持:
rvm get stable
rvm autolibs enable
rvm reinstall all --force
旧:
运行:
rvm requirements run force
rvm pkg remove
接着是:
rvm reinstall all --force
此说明不是 OSX 特定的,它适用于所有平台,尽管在 OSX 上它最适合 HomeBrew,当它未安装时,只会显示所需软件的列表,您需要手动安装。
【讨论】:
我仍然遇到同样的错误。我也用 sudo rvm install 1.9.3 --with-openssl-dir=$HOME/.rvm/usr 重新安装了 ruby 效果很好,谢谢! (我不需要执行rvm pkg remove
步骤)
我已经为这个安装苦苦挣扎了 11 个多小时。您的指令是唯一有效的指令。谢谢!!!!
我阅读了rvm reinstall
的错误日志,但它说找不到openssl ...
这不再是 OS X Catalina 下的有效解决方案。似乎 Apple 确实在 Ruby 所需的构建工具上做了很多工作......【参考方案2】:
多年后,由于 brew 升级,解决方案发生了变化,现在可以使用:
# pull full brew git repo
git -C "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core" fetch --unshallow
# generate new brew tap repo
brew tap-new $USER/old-openssl
# extract openssl 1.0.2t forumlar to $USER/old-openssl
brew extract --version=1.0.2t openssl $USER/old-openssl
# install old openssl from $USER/old-openssl repo
brew install openssl@1.0.2t
# reinstall ruby
rvm reinstall 2.3.4 --with-openssl-dir=`brew --prefix openssl@1.0.2t`
【讨论】:
我需要将--autolibs=disable
添加到 rvm reinstall
以防止 brew 更新失败。否则,这很有效。谢谢!
谢谢,这终于解决了我的问题!我必须从第一个命令中删除“--unshallow”,否则会出现错误:“致命:完整存储库上的--unshallow 没有意义”【参考方案3】:
试试这个。
rvm install ruby-2.0.0-preview1 --with-openssl-dir=$HOME/.rvm/usr --verify-downloads 1
【讨论】:
【参考方案4】:我卸载了我的 macbook 上的所有东西(rvm、rails、ruby 等)。
安装的自制软件
已安装的 rvm
跑rvm requirements run force
跑rvm install rails
rails new sample_app
cd sample_app
注意: source 'https://rubygems.org'
存在于 Gemfile 中,需要 openssl!
bundle install
成功了!
无需指定: --with-openssl-dir=$HOME/.rvm/usr
【讨论】:
【参考方案5】:要解决此问题,安装 openssl(最好使用 brew)。
将 Xcode 更新到最新版本并使用它启用命令行安装。
重新安装 rvm 使用
rvm reinstall all
注意rvm reinstall all --force
将删除您之前使用 rvm 安装的所有二进制文件/pkg。
【讨论】:
【参考方案6】:假设 ruby 已经安装,请执行以下操作:
rvm cleanup all
rvm reinstall all --force
【讨论】:
【参考方案7】:我遇到了同样的错误,通过打开新的终端会话修复了该错误。
我正在使用frum
ruby 版本管理器。
【讨论】:
【参考方案8】:gem install openssl
为我工作,但没有任何声明取决于openssl,它很奇怪
【讨论】:
【参考方案9】:以下命令解决了我的问题 注意 2.3.4 是我正在使用的 ruby 版本,根据您的要求进行更改
rvm reinstall 2.3.4 --with-openssl-dir=$rvm_path/usr
确保使用命令echo $rvm_path
正确设置了$rvm_path。如果此路径为空,请检查您的主文件夹是否有 .rvm
文件夹。
在这种情况下使用
rvm reinstall 2.3.4 --with-openssl-dir=~/.rvm/usr
【讨论】:
以上是关于无法加载此类文件 -- openssl (LoadError)的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 python openssl load_cert_chain 函数错误?