環境
VagrantでUbuntu14.04
rbenvを使ってRuby 1.9.3-p551
gem pg
で下記のエラーがでました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /home/vagrant/.rbenv/versions/1.9.3-p551/bin/ruby extconf.rb checking for pg_config... yes Using config values from /usr/bin/pg_config You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application. You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application. checking for libpq-fe.h... *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/home/vagrant/.rbenv/versions/1.9.3-p551/bin/ruby --with-pg --without-pg --with-pg-dir --without-pg-dir --with-pg-include --without-pg-include=${pg-dir}/include --with-pg-lib --without-pg-lib=${pg-dir}/lib --with-pg-config --without-pg-config --with-pg_config --without-pg_config /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:506:in `try_cpp' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:983:in `block in find_header' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' from /home/vagrant/.rbenv/versions/1.9.3-p551/lib/ruby/1.9.1/mkmf.rb:982:in `find_header' from extconf.rb:40:in `<main>' Gem files will remain installed in /var/www/html/hoge/vendor/bundle/ruby/1.9.1/gems/pg-0.13.2 for inspection. Results logged to /var/www/html/hoge/vendor/bundle/ruby/1.9.1/gems/pg-0.13.2/ext/gem_make.out An error occurred while installing pg (0.13.2), and Bundler cannot continue. Make sure that `gem install pg -v '0.13.2'` succeeds before bundling. </main> |
解決
libpq-dev(UbuntuのPostgres系パッケージ)が入っていないが原因ですよねー
1 |
sudo apt-get install libpq-dev |