読者です 読者をやめる 読者になる 読者になる

Ruby on Rails と歩む我が人生

Railsプログラマを目指す漢のRailsとの歩みの記録

bundle install で「g++: コマンドが見つかりませんでした」となる場合の解決方法

Rails プログラミング 備忘録

はじめに

Railsでプロジェクトを作成し、bundle installでgemをインストールしようとしたところエラーが出てgemをインストールできなかったのでその解決方法です。

エラーへの対処方法

表示されたエラー

こんな感じです

$ bundle install
 ~~中略~~
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/therubyracer-0.12.2/ext/v8
/opt/rbenv/versions/2.3.0/bin/ruby -r ./siteconf20161215-665-1qmq28n.rb extconf.rb
checking for main() in -lpthread... yes
creating Makefile

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/therubyracer-0.12.2/mkmf.log

current directory: /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/therubyracer-0.12.2/ext/v8
make "DESTDIR=" clean

current directory: /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/therubyracer-0.12.2/ext/v8
make "DESTDIR="
compiling primitive.cc
make: g++: コマンドが見つかりませんでした
make: *** [primitive.o] エラー 127

make failed, exit code 2

Gem files will remain installed in /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/therubyracer-0.12.2 for inspection.
Results logged to /opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/therubyracer-0.12.2/gem_make.out

An error occurred while installing therubyracer (0.12.2), and Bundler cannot continue.
Make sure that `gem install therubyracer -v '0.12.2'` succeeds before bundling.

ようするにこの部分ですね。

make: g++: コマンドが見つかりませんでした

対処方法

エラーにある通り、g++をインストールしてあげます。

$ yum install gcc-c++

再度bundle installを実施

$ bundle install
~~中略~~
Bundle complete! 13 Gemfile dependencies, 59 gems now installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.

そんな感じで!