无法加载此类文件 - openssl(LoadError)

时间:2013-02-13 02:29:54

标签: ruby-on-rails rvm

在rvm的OS X中,如何检查openssl是否配置正确? 我得到cannot load such file -- openssl (LoadError) 我在Rails 3 - no such file to load -- openssl尝试了所有内容但没有成功。

8 个答案:

答案 0 :(得分:48)

检查安装的红宝石:

rvm list

然后确保使用其中一个已安装的红宝石:

rvm use 1.9.3-p327

并测试openssl是否可用:

ruby -ropenssl -e "puts :OK"

如果OK已启用,则会打印openssl,否则您将获得异常

如果异常=>

更新

新版本的rvm改进了自动化支持:

rvm get stable
rvm autolibs enable
rvm reinstall all --force

OLD:

运行:

rvm requirements run force
rvm pkg remove

其次是:

rvm reinstall all --force

该指令不是特定于OSX的,它可以在所有平台上运行,虽然在OSX上它最适合HomeBrew,当它没有安装时,只会显示所需软件的列表,你需要手动安装它。

答案 1 :(得分:2)

我在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

答案 2 :(得分:2)

很多年后,由于酿造升级而改变了解决方案,现在可以使用:

# 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`

答案 3 :(得分:1)

要解决此问题,安装openssl(最好使用brew)

使用Xcode将Xcode更新到最新版本并启用命令行安装

使用重新安装rvm rvm重新安装所有

请注意 rvm重新安装所有--force 将删除您使用rvm完成的所有先前安装的二进制文件/ pkgs。

答案 4 :(得分:1)

尝试一下。

rvm install ruby-2.0.0-preview1  --with-openssl-dir=$HOME/.rvm/usr --verify-downloads 1

答案 5 :(得分:0)

gem install openssl
为我工作,但没有任何声明取决于openssl,它很奇怪

答案 6 :(得分:0)

假设已经安装了 ruby​​,请执行以下操作:

rvm cleanup all

rvm reinstall all --force

答案 7 :(得分:-2)

以下命令解决了我的问题 注意 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