Octopress導入で起った数々のエラー。忘備録として、残しておく。
ExecJS::RuntimeUnavailableのエラー
[2016-12-09 20:17:28] INFO WEBrick::HTTPServer#start: pid=22409 port=4000
/var/lib/gems/2.3.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
from /var/lib/gems/2.3.0/gems/execjs-2.7.0/lib/execjs.rb:5:in `<module:ExecJS>'
from /var/lib/gems/2.3.0/gems/execjs-2.7.0/lib/execjs.rb:4:in `<top (required)>'
from /var/lib/gems/2.3.0/gems/coffee-script-2.4.1/lib/coffee_script.rb:1:in `require'
上記のようなエラーを吐いた場合はNode.jsがインストールされてないから、sudo apt install nodejs
を忘れずに。
installing RedCloth (4.2.9) でエラー
bundle install
したときに、以下のエラー
An error occurred while installing RedCloth (4.2.9), and Bundler cannot continue.
Make sure that `gem install RedCloth -v '4.2.9'` succeeds before bundling.
rmvをインストール。
$ sudo apt-get install curl
$ curl -sSL https://rvm.io/mpapis.asc | gpg2 --import
$ curl -L https://get.rvm.io | bash -s stable --ruby
$ source ~/.rvm/scripts/rvm
そしたら、rvm で Ruby1.9.2をインストールして、 RedClothだけをインストールする。あと、sudo apt install ruby-dev
をしてなければする。
$ rvm install 1.9.2
$ sudo gem install RedCloth -v '4.2.9'
その後、バージョンを、1.9.3以上に上げて、bundle install
しなおす。
$ rvm install 2.3.3
そしたら、上手くいった。
rake (LoadError) でエラー
/usr/local/bin/rake:23:in `load': cannot load such file -- /usr/share/rubygems-integration/all/gems/rake-10.5.0/bin/rake (LoadError)
from /usr/local/bin/rake:23:in `<main>'
/usr/local/bin/rake:23:in `load': cannot load such file -- /usr/share/rubygems-integration/all/specifications/bin/rake (LoadError)
from /usr/local/bin/rake:23:in `<main>'
from /usr/local/bin/ruby_executable_hooks2.3:15:in `eval'
from /usr/local/bin/ruby_executable_hooks2.3:15:in `<main>'
sudo gem uninstall rake
してから、sudo gem install rake
しなおす。
これらの上記のエラーは、私の場合は直った。実際は、ちゃんとしたエラーのトレースをして、対応すべきなんだろうけど、ruby勉強するのは後回しで、ググってひたすらコピペという、なんとも恥ずべき対応で潜りぬけた…