尋常でないもふもふ

a software engineer blog

RubyMineでデバッグモードが動かなかった

概要

RubyMine はデバッグ実行すると自動的に必要となる ruby-debug-idedebase をインストールしてくれるが、ファイル権限のエラーがでてしまいデバッグできない問題に遭遇した。

エラー内容

Error running service_test
Failed to Install Gems. Following gems were not installed:
/Applications/RubyMine.app/Contents/rb/gems/ruby-debug-ide-0.6.1.beta2.gem:  While executing gem ... (Errno::EACCES)
Permission denied @ dir_s_mkdir - /Users/jnst/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/ruby-debug-ide-0.6.1.beta2 Building native extensions.  This could take a while...
/Applications/RubyMine.app/Contents/rb/gems/debase-0.2.2.beta8.gem:  While executing gem ... (Errno::EACCES)
Permission denied @ dir_s_mkdir - /Users/jnst/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/debase-0.2.2.beta8 Building native extensions.  This could take a while...

環境

  • OS X El Capitan
    • バージョン 10.11.6
  • rbenv 1.0.0
  • RubyMine 2016.2.1
    • Build #RM-162.1447.29, built on August 3, 2016

解決方法

RubyMine 自身が /Applications/RubyMine.app/Contents/rb/gems/ 配下にもってる gem を rbenv 環境の Ruby の gems ディレクトリにインストールするという動作になっている。
しかしエラー内容には、インストール先ディレクトリとなる Users/jnst/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/ のオーナーが root になっているためファイル権限エラーな状態。
rbenv 経由の Ruby のインストール方法が悪かったのか、それとも El Capitan だとこうなっちゃうのか、本質的な原因はよくわからんので、直接 chownディレクトリの所有者を root から自分のユーザー名に変えたら今度はインストールできた。