[RVM] Could not load OpenSSL エラーの解決方法
- 2019 5/23
rvm で Ruby version 2.1.3 をインストールすると Empty path passed to certificates update 的なエラーが発生しました。
% rvm install 2.1.3 Searching for binary rubies, this might take some time. Found remote file https://rubies.travis-ci.org/osx/10.9/x86_64/ruby-2.1.3.tar.bz2 Checking requirements for osx_brew. Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date. Requirements installation successful. ruby-2.1.3 - #configure ruby-2.1.3 - #download ruby-2.1.3 - #validate archive ruby-2.1.3 - #extract ruby-2.1.3 - #validate binary ruby-2.1.3 - #setup ruby-2.1.3 - #gemset created /Users/bakorer/.rvm/gems/[email protected] ruby-2.1.3 - #importing gemset /Users/bakorer/.rvm/gemsets/global.gems...................................................................... ruby-2.1.3 - #generating global wrappers.............. ruby-2.1.3 - #gemset created /Users/bakorer/.rvm/gems/ruby-2.1.3 ruby-2.1.3 - #importing gemsetfile /Users/bakorer/.rvm/gemsets/default.gems evaluated to empty gem list ruby-2.1.3 - #generating default wrappers.............. /Users/bakorer/.rvm/scripts/functions/support: line 490: 56810 Trace/BPT trap: 5 "$ruby_path" -rrbconfig -e '\ File.open("'"$config_path"'","w") { |file| RbConfig::CONFIG.sort.each{|key,value| file.write("#{key.gsub(/\.|-/,"_")}=\"#{value.gsub("$","\\$")}\"\n") } } ' > /dev/null 2>&1 Empty path passed to certificates update, functions stack: requirements_osx_update_openssl_cert_run rvm_requiremnts_fail_or_run_action __rvm_osx_ssl_certs_ensure_for_ruby __rvm_osx_ssl_certs_ensure_for_ruby_except_jruby external_import_setup external_import main |
Ruby 2.1.3 を使おうとすると dyld: Library not loaded: /usr/local/lib/libgmp.10.dylib という libgmp が読み込めないというメッセージが表示されてしまいます。
% rvm use 2.1.3 Using /Users/bakorer/.rvm/gems/ruby-2.1.3 dyld: Library not loaded: /usr/local/lib/libgmp.10.dylib Referenced from: /Users/bakorer/.rvm/rubies/ruby-2.1.3/bin/ruby Reason: Incompatible library version: ruby requires version 13.0.0 or later, but libgmp.10.dylib provides version 12.0.0 |
下記のように disable-binary フラグを付けて再インストールをすると直るようです。
% rvm reinstall 2.1.3 --disable-binary ruby-2.1.3 - #removing rubies/ruby-2.1.3 - please wait Checking requirements for osx_brew. Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date. Requirements installation successful. Installing Ruby from source to: /Users/bakorer/.rvm/rubies/ruby-2.1.3, this may take a while depending on your cpu(s)... ruby-2.1.3 - #downloading ruby-2.1.3, this may take a while depending on your connection... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 11.4M 100 11.4M 0 0 5118k 0 0:00:02 0:00:02 --:--:-- 5118k ruby-2.1.3 - #extracting ruby-2.1.3 to /Users/bakorer/.rvm/src/ruby-2.1.3 - please wait ruby-2.1.3 - #configuring - please wait ruby-2.1.3 - #post-configuration - please wait ruby-2.1.3 - #compiling - please wait ruby-2.1.3 - #installing - please wait ruby-2.1.3 - #making binaries executable - please wait Rubygems 2.2.2 already available in installed ruby, skipping installation, use --force to reinstall. ruby-2.1.3 - #gemset created /Users/bakorer/.rvm/gems/[email protected] ruby-2.1.3 - #importing gemset /Users/bakorer/.rvm/gemsets/global.gems - please wait ruby-2.1.3 - #generating global wrappers - please wait ruby-2.1.3 - #gemset created /Users/bakorer/.rvm/gems/ruby-2.1.3 ruby-2.1.3 - #importing gemsetfile /Users/bakorer/.rvm/gemsets/default.gems evaluated to empty gem list ruby-2.1.3 - #generating default wrappers - please wait ruby-2.1.3 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake). Install of ruby-2.1.3 - #complete Ruby was built without documentation, to build it run: rvm docs generate-ri Making gemset ruby-2.1.3 pristine - please wait Making gemset ruby-2.1.3@global pristine - please wait |
以上です。
・osx – Error when installing Ruby 2.1.3 with RVM – Stack Overflow
RVM で .rvmrc ファイルで Ruby のバージョンと gemset を切り替えていたのですが、今だとWarningメッセージが表示されるんですね。
You are using '.rvmrc', it requires trusting, it is slower and it is not compatible with other ruby managers, you can switch to '.ruby-version' using 'rvm rvmrc to [.]ruby-version' or ignore this warnings with 'rvm rvmrc warning ignore /Users/bakorer/git/myapp/.rvmrc', '.rvmrc' will continue to be the default project file in RVM 1 and RVM 2, to ignore the warning for all files run 'rvm rvmrc warning ignore all.rvmrcs'. Using /Users/bakorer/.rvm/gems/ruby-2.0.0-p247 with gemset myapp |
どうやら、これからはRubyのバージョン管理システム(rvm, rbenv, rbfu)で設定ファイルを統一する動きがあったそうで、下記のように .ruby-version と .ruby-gemset に分割しておいた方がよさそうです。
.rvmrc ファイル
rvm use [email protected] |
↓ .rvmrc を2ファイルに分割します。
.ruby-version ファイル
ruby-2.0.0-p247 |
.ruby-gemset ファイル
mygemset |
もちろん、従来の .rvmrc ファイルも使えるので、その場合、警告を無視するには下記のコマンドを実行すればOKです。
rvm rvmrc warning ignore all.rvmrcs |
・Use rvmrc or ruby-version file to set a project gemset with RVM? – Stack Overflow
Ruby on Rails のプロジェクトにて、rvm の gemset を再作成(delete → create)後に bundle install して gem をインストールしてから、rails s したら死んだ。
■ エラーメッセージ
% rails s /Users/bakorer/.rvm/gems/ruby-1.9.3-p286@myapp/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle: [BUG] Segmentation fault ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0] zsh: abort rails s |
■ 解決方法
$ rvm get head && rvm reload && rvm repair all |
RVM を最新版にすることで解決した。
【参考】ruby – Rails Script Segmentation Fault with RVM – Stack Overflow
RVM で zlib インストールしようとしたら、チェックサム無いってエラーでインストールできないときの対処方法をメモ。
# rvm pkg install zlib Fetching zlib-1.2.7.tar.gz to /usr/local/rvm/archives There is no checksum for 'http://prdownloads.sourceforge.net/libpng/zlib-1.2.7.tar.gz' or 'zlib-1.2.7.tar.gz', it's not possible to validate it. If you wish to continue with unverified download add '--verify-downloads 1' after the command. Please note that it's required to reinstall all installed rubies: rvm reinstall all --force rvm all-gemsets do rvm gemset pristine |
下記のようにインストールすればOKです。
rvm --verify-downloads 1 pkg install zlib rvm get head |
以上です。
【参考】
RVM 上に構築した Ruby on Rails で WEBrick サーバを 443 Port 指定で起動するために、sudo で実行したところエラーが発生しました。
■ エラー内容
$ sudo rails s -p 443 Password: /Users/bakorer/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [minitest-1.6.0, rake-0.8.7, rdoc-2.5.8] (Gem::LoadError) from /Users/bakorer/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec' from /Users/bakorer/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems.rb:1208:in `gem' from /Users/bakorer/.rvm/gems/[email protected]/bin/rails:18:in `<main>' |
原因は、Rails の開発環境を RVM で構築していたせいでした。
rvm 環境上で ruby や rails コマンドで sudo が必要な場合は rvmsudo を使わないといけないみたいです。
$ rvmsudo rails s -p 443 Password: => Booting WEBrick => Rails 3.1.0 application starting in development on http://0.0.0.0:443 => Call with -d to detach => Ctrl-C to shutdown server [2012-02-23 23:58:43] INFO WEBrick 1.3.1 [2012-02-23 23:58:43] INFO ruby 1.9.2 (2011-07-09) [x86_64-darwin11.3.0] [2012-02-23 23:58:43] INFO WEBrick::HTTPServer#start: pid=4649 port=443 |
rvmsudo でやったら上手くいきました。
以上です。
【参考】
・ruby – Could not find heroku (>= 0) amongst [] (Gem::LoadError) – Stack Overflow
・RVM環境での sudo は rvmsudo だった。。 – The Second Longest Day in My Life…
Mac に RVM で Ruby の開発環境を整えて、いざ gem をインストールしようとしたらエラーが発生しました。
■ エラー内容
$ gem install heroku ERROR: Loading command: install (LoadError) cannot load such file -- zlib ERROR: While executing gem ... (NameError) uninitialized constant Gem::Commands::InstallCommand |
下記のようなコマンドで Ruby をインストールしたのが原因で zlib への Path が通らなかったみたい。
rvm install 1.9.3 -C \ --with-readline-dir=$rvm_path/usr \ --with-iconv-dir=$rvm_path/usr \ --with-zlib-dir=$rvm_path/usr \ --with-openssl-dir=$rvm_path/usr |
-C オプションでPathとか指定せずに、シンプルにインストールすれば上手くいった。
rvm install 1.9.3 |
原因はちゃんと分かってないけど、とりあえず良しとする。
Mac で RVM を使って Ruby の環境を整えようと思ったら、早々にしてエラーが発生しました。
■ エラー内容
$ rvm install 1.9.2 -C --with-readline-dir=/usr/local Fetching yaml-0.1.4.tar.gz to /Users/bakorer/.rvm/archives Extracting yaml-0.1.4.tar.gz to /Users/bakorer/.rvm/src Configuring yaml in /Users/bakorer/.rvm/src/yaml-0.1.4. Compiling yaml in /Users/bakorer/.rvm/src/yaml-0.1.4. Installing yaml to /Users/bakorer/.rvm/usr Installing Ruby from source to: /Users/bakorer/.rvm/rubies/ruby-1.9.2-p290, this may take a while depending on your cpu(s)... ruby-1.9.2-p290 - #fetching ruby-1.9.2-p290 - #extracted to /Users/bakorer/.rvm/src/ruby-1.9.2-p290 (already extracted) ruby-1.9.2-p290 - #configuring ruby-1.9.2-p290 - #compiling Error running 'make ', please read /Users/bakorer/.rvm/log/ruby-1.9.2-p290/make.log There has been an error while running make. Halting the installation. |
原因は、Mac OS Lion から gcc が変わって、正常にコンパイルできなかったせいでした。
なので、この記事を参考にして apple-gcc42 をインストールして、 CC=’gcc-4.2′ のように使用する gcc を一時的に変更すればOKです。
・[Mac] Homebrew で apple-gcc42 をインストールする方法 | CodeNote.net
ちなみに、Lion に Ruby の開発環境を構築したい方はこちらを参考にして下さい。
・Mac OS X Lion に RVM で Ruby の開発環境を構築する手順 | CodeNote.net
以上です。
【参考】
・Mac OS X LionにRuby 1.8.7、Rails 3.0.10をインストールする – モンテカットの開発日記