Skip to content

Instantly share code, notes, and snippets.

@HoughIO
Created February 16, 2015 17:09
Show Gist options
  • Save HoughIO/3e10dfb0f473963c6bdc to your computer and use it in GitHub Desktop.
Save HoughIO/3e10dfb0f473963c6bdc to your computer and use it in GitHub Desktop.
pg errors log
/usr/bin/chef-solo:24:in `<main>'
[2015-02-16T17:03:07+00:00] ERROR: chef_gem[pg] (postgresql::ruby line 55) had an error: Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:2:in `<main>'
Gem files will remain installed in /var/lib/gems/1.9.1/gems/pg-0.18.1 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/pg-0.18.1/ext/gem_make.out
================================================================================
Error executing action `install` on resource 'chef_gem[pg]'
================================================================================
Gem::Installer::ExtensionBuildError
-----------------------------------
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:2:in `<main>'
Gem files will remain installed in /var/lib/gems/1.9.1/gems/pg-0.18.1 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/pg-0.18.1/ext/gem_make.out
Cookbook Trace:
---------------
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:55:in `rescue in from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:21:in `from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/tickets/recipes/default.rb:11:in `from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/tickets/recipes/development.rb:4:in `from_file'
Resource Declaration:
---------------------
# In /tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb
55: chef_gem "pg"
56: rescue Gem::Installer::ExtensionBuildError, Mixlib::ShellOut::ShellCommandFailed => e
Compiled Resource:
------------------
# Declared in /tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:55:in `rescue in from_file'
chef_gem("pg") do
provider Chef::Provider::Package::Rubygems
action :install
retries 0
retry_delay 2
package_name "pg"
version "0.18.1"
cookbook_name :postgresql
recipe_name "ruby"
end
================================================================================
Recipe Compile Error in /tmp/vagrant-chef-2/chef-solo-1/cookbooks/tickets/recipes/development.rb
================================================================================
Gem::Installer::ExtensionBuildError
-----------------------------------
chef_gem[pg] (postgresql::ruby line 55) had an error: Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:2:in `<main>'
Gem files will remain installed in /var/lib/gems/1.9.1/gems/pg-0.18.1 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/pg-0.18.1/ext/gem_make.out
Cookbook Trace:
---------------
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:55:in `rescue in from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:21:in `from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/tickets/recipes/default.rb:11:in `from_file'
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/tickets/recipes/development.rb:4:in `from_file'
Relevant File Content:
----------------------
/tmp/vagrant-chef-2/chef-solo-1/cookbooks/postgresql/recipes/ruby.rb:
48: end
49:
50: node['postgresql']['client']['packages'].each do |pg_pack|
51: resources("package[#{pg_pack}]").run_action(:install)
52: end
53:
54: begin
55>> chef_gem "pg"
56: rescue Gem::Installer::ExtensionBuildError, Mixlib::ShellOut::ShellCommandFailed => e
57: # Are we an omnibus install?
58: raise if RbConfig.ruby.scan(%r{(chef|opscode)}).empty?
59: # Still here, must be omnibus. Lets make this thing install!
60: Chef::Log.warn 'Failed to properly build pg gem. Forcing properly linking and retrying (omnibus fix)'
61: gem_dir = e.message.scan(%r{will remain installed in ([^ ]+)}).flatten.first
62: raise unless gem_dir
63: gem_name = File.basename(gem_dir)
64: ext_dir = File.join(gem_dir, 'ext')
[2015-02-16T17:02:43+00:00] INFO: Forking chef instance to converge...
[2015-02-16T17:02:43+00:00] DEBUG: Fork successful. Waiting for new chef pid: 12376
[2015-02-16T17:03:07+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
Chef never successfully completed! Any errors should be visible in the
output above. Please fix your recipes so that they properly complete.
Grahams-MacBook-Pro-2:tickets GrahamHough$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment