railsのインストールまで終えたので、いきようようと rails server をしようとしたところエラーとなりました。
[hase_done@localhost tesrails2]$ rails s
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:84:in `rescue in block (2 levels) i
n require': There was an error while trying to load the gem 'uglifier'. (Bundler::GemRequireError)
Gem Load Error is: Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes.
Backtrace for gem load error is:
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/execjs-2.7.0/lib/execjs.rb:5:in `<module:ExecJS>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/execjs-2.7.0/lib/execjs.rb:4:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/uglifier-3.2.0/lib/uglifier.rb:5:in `require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/uglifier-3.2.0/lib/uglifier.rb:5:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:81:in `require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:81:in `block (2 levels) in require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:76:in `each'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:76:in `block in require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:65:in `each'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:65:in `require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler.rb:114:in `require'
/home/hase_done/tesrails2/config/application.rb:7:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:129:in `requir
e'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:129:in `block
in perform'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:126:in `tap'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:126:in `perfor
m'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor/command.rb:27:in `run'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor.rb:387:in `dispatch'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/base.rb:63:in `perform'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command.rb:44:in `invoke'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands.rb:16:in `<top (required)>'
/home/hase_done/tesrails2/bin/rails:9:in `require'
/home/hase_done/tesrails2/bin/rails:9:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client.rb:30:in `run'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/bin/spring:49:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
/home/hase_done/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
/home/hase_done/tesrails2/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Bundler Error Backtrace:
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:80:in `block (2 levels
) in require'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:76:in `each'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:76:in `block in requir
e'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:65:in `each'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler/runtime.rb:65:in `require'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/bundler-1.16.0/lib/bundler.rb:114:in `require'
from /home/hase_done/tesrails2/config/application.rb:7:in `<top (required)>'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:1
29:in `require'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:1
29:in `block in perform'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:1
26:in `tap'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/server/server_command.rb:1
26:in `perform'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor/command.rb:27:in `run'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/thor-0.20.0/lib/thor.rb:387:in `dispatch'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/base.rb:63:in `perform'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command.rb:44:in `invoke'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands.rb:16:in `<top (required)>
'
from /home/hase_done/tesrails2/bin/rails:9:in `require'
from /home/hase_done/tesrails2/bin/rails:9:in `<top (required)>'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/client.rb:30:in `run'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/bin/spring:49:in `<top (required)>'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/hase_done/tesrails2/bin/spring:15:in `<top (required)>'
from bin/rails:3:in `load'
from bin/rails:3:in `<main>'
となったので検索したらtherubyracerというgemが必要みたいです。
gem 'therubyracer'
をrails newしたプロジェクトディレクトリ直下のGemfileに追記して、再度bundle install!!
Fetching therubyracer 0.12.3
Installing therubyracer 0.12.3 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/therubyracer-0.12.3/ext/v8
/home/hase_done/.rbenv/versions/2.4.2/bin/ruby -r ./siteconf20171130-3664-bwgbm0.rb extconf.rb
checking for -lpthread... yes
creating Makefile
current directory: /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/therubyracer-0.12.3/ext/v8
make "DESTDIR=" clean
current directory: /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/therubyracer-0.12.3/ext/v8
make "DESTDIR="
compiling accessor.cc
make: g++: Command not found
make: *** [accessor.o] Error 127
make failed, exit code 2
Gem files will remain installed in /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/therubyracer-0.12.3 for inspection.
Results logged to /home/hase_done/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0-static/therubyracer-0.12.3/gem_make.out
An error occurred while installing therubyracer (0.12.3), and Bundler cannot continue.
Make sure that `gem install therubyracer -v '0.12.3'` succeeds before bundling.
In Gemfile:
therubyracer
だめだった。
g++: Command not found
とあるので
$ sudo yum install -y gcc-c++
ここで再度bundle install!!!
出来た。
$ rails server
が無事動きました。
完 はらはらさせる~
参考サイト様
https://www.scriptlife.jp/contents/programming/2017/11/27/ror-error-uglifier/
