I then tried updating MySQL after it listed that error and received an error message that read:
Gem files will remain installed in /Users/johnjackson/.rvm/gems/ruby- 2.2.1/gems/mysql2-0.3.18 for inspection.
Results logged to /Users/johnjackson/.rvm/gems/ruby- 2.2.1/extensions/x86_64-darwin-14/2.2.0/mysql2-0.3.18/gem_make.out
Johns-MacBook-Pro:Client johnjackson$ bundle install
Fetching gem metadata from https://rubygems.org/............
Fetching version metadata from https://rubygems.org/..
Resolving dependencies...
Using rake 10.4.2
Using i18n 0.7.0
Using json 1.8.2
Using minitest 5.6.0
Using thread_safe 0.3.5
Using tzinfo 1.2.2
Using activesupport 4.2.0
Using builder 3.2.2
Using erubis 2.7.0
Using mini_portile 0.6.2
Using nokogiri 1.6.6.2
Using rails-deprecated_sanitizer 1.0.3
Using rails-dom-testing 1.0.6
Using loofah 2.0.1
Using rails-html-sanitizer 1.0.2
Using actionview 4.2.0
Using rack 1.6.0
Using rack-test 0.6.3
Using actionpack 4.2.0
Using globalid 0.3.5
Using activejob 4.2.0
Using mime-types 2.4.3
Using mail 2.6.3
Using actionmailer 4.2.0
Using activemodel 4.2.0
Using arel 6.0.0
Using activerecord 4.2.0
Using debug_inspector 0.0.2
Using binding_of_caller 0.7.2
Using bundler 1.8.5
Using columnize 0.9.0
Using byebug 4.0.5
Using coffee-script-source 1.9.1.1
Using execjs 2.5.2
Using coffee-script 2.4.1
Using thor 0.19.1
Using railties 4.2.0
Using coffee-rails 4.1.0
Using multi_json 1.11.0
Using jbuilder 2.2.13
Using jquery-rails 4.0.3
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/johnjackson/.rvm/rubies/ruby-2.2.1/bin/ruby -r ./siteconf20150422-18439-16qcm93.rb extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... no
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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
--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=/Users/johnjackson/.rvm/rubies/ruby-2.2.1/bin/$(RUBY_BASE_NAME)
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
extconf failed, exit code 1
Gem files will remain installed in /Users/johnjackson/.rvm/gems/ruby- 2.2.1/gems/mysql2-0.3.18 for inspection.
Results logged to /Users/johnjackson/.rvm/gems/ruby-2.2.1/extensions/x86_64-darwin-14/2.2.0/mysql2-0.3.18/gem_make.out
I am not sure what I need to do to ensure that 'bundle install' works correctly... when I try to fix the MySQL error code, the MySQL install/update fails every time for some reason.
You need to have the MySQL server setup and running in the system. I trust you're using Mac OS and can try this:
brew install mysql
mysql.server start
I am trying to use the mysql 2 gem with Rails, so I added gem 'mysql2'. I am not able to install it using bundle install, and it gives me this error.
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/Ben/.rvm/rubies/ruby-2.2.0/bin/ruby -r ./siteconf20150307-17143-1jx7cob.rb extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... no
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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
--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=/Users/Ben/.rvm/rubies/ruby-2.2.0/bin/$(RUBY_BASE_NAME)
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
extconf failed, exit code 1
Gem files will remain installed in /Users/Ben/.rvm/gems/ruby-2.2.0/gems/mysql2-0.3.18 for inspection.
Results logged to /Users/Ben/.rvm/gems/ruby-2.2.0/extensions/x86_64-darwin-14/2.2.0/mysql2-0.3.18/gem_make.out
An error occurred while installing mysql2 (0.3.18), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.18'` succeeds before bundling.
I have no idea how to get it to work, so any help would be appreciated.
Here is some info on my computer.
ruby -v => ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin14]
gem 'rails', '4.1.5' (rails -v won't work)
bundler -v => Bundler version 1.8.4
OS: Mac Yosemite
For Mac Users:
brew install mysql
gem install mysql2
For Ubuntu Users:
sudo apt-get install mysql-server mysql-client libmysqlclient-dev
sudo gem install mysql2
Installing the libmysqlclient-dev gives you the necessary files to compile the mysql2 gem which is what Rails will use to connect to MySQL when you setup your Rails app.
Finally, run bundle install
try to install 'libmysqlclient-dev' first
sudo apt-get install libmysqlclient-dev
and after run
bundle install
Make sure that you install your gems using bundler.
Run
bundle install
or simply
gem install mysql2
Then include it in your database.yml file
I figured out my problem, I was running rails server in RubyMine, but for some reason, RM was using an old version of ruby. Changing the project's sdks worked perfectly!
Not an OS specific answer, but may help others:
Newer MySQL2 adapters (v0.4.x) are not compatible with Rails 4.1.5.
Specifying an older mysql2 gem (eg v0.3.x) fixes the issue:
gem 'mysql2', '~> 0.3.21'
Source: https://github.com/brianmario/mysql2/issues/675
I created a new Rails application and I have done this:
I changed the "sqlite3" gem to "mysql2" and I added "unicorn".
I pushed the application to bitbucket
I have created the Stack, the Rails Layer and initialise the Instance in OpsWorks, also I have created the App (Ruby on rails type) and linked it to the bitbucket repository.
Then when I try to do the first deploy I get the below error:
[2015-01-22T00:11:16+00:00] INFO: Starting chef-zero on port 8889 with repository at repository at /opt/aws/opsworks/current
One version per cookbook
data_bags at /var/lib/aws/opsworks/data/data_bags
nodes at /var/lib/aws/opsworks/data/nodes
[2015-01-22T00:11:17+00:00] INFO: Forking chef instance to converge...
[2015-01-22T00:11:17+00:00] INFO: *** Chef 11.10.4 ***
[2015-01-22T00:11:17+00:00] INFO: Chef-client pid: 3826
[2015-01-22T00:11:17+00:00] INFO: Setting the run_list to ["opsworks_custom_cookbooks::load", "opsworks_custom_cookbooks::execute"] from JSON
[2015-01-22T00:11:17+00:00] WARN: Run List override has been provided.
[2015-01-22T00:11:17+00:00] WARN: Original Run List: [recipe[opsworks_custom_cookbooks::load], recipe[opsworks_custom_cookbooks::execute]]
[2015-01-22T00:11:17+00:00] WARN: Overridden Run List: [recipe[opsworks_custom_cookbooks::load], recipe[opsworks_custom_cookbooks::execute]]
[2015-01-22T00:11:17+00:00] INFO: Run List is [recipe[opsworks_custom_cookbooks::load], recipe[opsworks_custom_cookbooks::execute]]
[2015-01-22T00:11:17+00:00] INFO: Run List expands to [opsworks_custom_cookbooks::load, opsworks_custom_cookbooks::execute]
[2015-01-22T00:11:17+00:00] INFO: Starting Chef Run for rails-app1.localdomain
[2015-01-22T00:11:17+00:00] INFO: Running start handlers
[2015-01-22T00:11:17+00:00] INFO: Start handlers complete.
[2015-01-22T00:11:17+00:00] INFO: HTTP Request Returned 404 Not Found: Object not found: /reports/nodes/rails-app1.localdomain/runs
[2015-01-22T00:11:22+00:00] INFO: Loading cookbooks [apache2, dependencies, deploy, gem_support, mod_php5_apache2, mysql, nginx, opsworks_agent_monit, opsworks_aws_flow_ruby, opsworks_berkshelf, opsworks_bundler, opsworks_commons, opsworks_custom_cookbooks, opsworks_initial_setup, opsworks_java, opsworks_nodejs, opsworks_rubygems, packages, passenger_apache2, php, rails, ruby, scm_helper, ssh_users, unicorn]
[2015-01-22T00:11:23+00:00] INFO: Not needed with Chef 11.x (x >= 8) anymore.
[2015-01-22T00:11:23+00:00] INFO: Processing directory[/opt/aws/opsworks/current/site-cookbooks] action delete (opsworks_custom_cookbooks::load line 4)
[2015-01-22T00:11:23+00:00] INFO: Processing ruby_block[merge all cookbooks sources] action run (opsworks_custom_cookbooks::load line 12)
[2015-01-22T00:11:23+00:00] INFO: ruby_block[merge all cookbooks sources] called
[2015-01-22T00:11:23+00:00] WARN: Skipping final node save because override_runlist was given
[2015-01-22T00:11:23+00:00] INFO: Chef Run complete in 5.728910816 seconds
[2015-01-22T00:11:23+00:00] INFO: Running report handlers
[2015-01-22T00:11:23+00:00] INFO: Report handlers complete
---
[2015-01-22T00:11:23+00:00] INFO: Starting chef-zero on port 8889 with repository at repository at /opt/aws/opsworks/current
One version per cookbook
data_bags at /var/lib/aws/opsworks/data/data_bags
nodes at /var/lib/aws/opsworks/data/nodes
[2015-01-22T00:11:24+00:00] INFO: Forking chef instance to converge...
[2015-01-22T00:11:24+00:00] INFO: *** Chef 11.10.4 ***
[2015-01-22T00:11:24+00:00] INFO: Chef-client pid: 3971
[2015-01-22T00:11:24+00:00] INFO: Setting the run_list to ["opsworks_custom_cookbooks::load", "opsworks_custom_cookbooks::execute"] from JSON
[2015-01-22T00:11:24+00:00] WARN: Run List override has been provided.
[2015-01-22T00:11:24+00:00] WARN: Original Run List: [recipe[opsworks_custom_cookbooks::load], recipe[opsworks_custom_cookbooks::execute]]
[2015-01-22T00:11:24+00:00] WARN: Overridden Run List: [recipe[deploy::default], recipe[opsworks_stack_state_sync], recipe[deploy::rails], recipe[test_suite], recipe[opsworks_cleanup]]
[2015-01-22T00:11:24+00:00] INFO: Run List is [recipe[deploy::default], recipe[opsworks_stack_state_sync], recipe[deploy::rails], recipe[test_suite], recipe[opsworks_cleanup]]
[2015-01-22T00:11:24+00:00] INFO: Run List expands to [deploy::default, opsworks_stack_state_sync, deploy::rails, test_suite, opsworks_cleanup]
[2015-01-22T00:11:24+00:00] INFO: Starting Chef Run for rails-app1.localdomain
[2015-01-22T00:11:24+00:00] INFO: Running start handlers
[2015-01-22T00:11:24+00:00] INFO: Start handlers complete.
[2015-01-22T00:11:24+00:00] INFO: HTTP Request Returned 404 Not Found: Object not found: /reports/nodes/rails-app1.localdomain/runs
[2015-01-22T00:11:29+00:00] INFO: Loading cookbooks [apache2, dependencies, deploy, gem_support, mod_php5_apache2, mysql, nginx, opsworks_agent_monit, opsworks_aws_flow_ruby, opsworks_bundler, opsworks_cleanup, opsworks_commons, opsworks_initial_setup, opsworks_java, opsworks_nodejs, opsworks_rubygems, opsworks_stack_state_sync, packages, passenger_apache2, php, rails, ruby, scm_helper, ssh_users, test_suite, unicorn]
...removed some code for stackoverflow body limitation
[2015-01-22T00:11:32+00:00] INFO: file[/home/deploy/.ssh/config] updated atime and mtime to 2015-01-22 00:11:32 +0000
[2015-01-22T00:11:32+00:00] INFO: Processing execute[echo 'StrictHostKeyChecking no' > /home/deploy/.ssh/config] action run (deploy::rails line 23)
[2015-01-22T00:11:32+00:00] INFO: execute[echo 'StrictHostKeyChecking no' > /home/deploy/.ssh/config] ran successfully
[2015-01-22T00:11:32+00:00] INFO: Processing template[/home/deploy/.ssh/id_dsa] action create (deploy::rails line 27)
[2015-01-22T00:11:32+00:00] INFO: template[/home/deploy/.ssh/id_dsa] created file /home/deploy/.ssh/id_dsa
[2015-01-22T00:11:32+00:00] INFO: template[/home/deploy/.ssh/id_dsa] updated file contents /home/deploy/.ssh/id_dsa
[2015-01-22T00:11:32+00:00] INFO: template[/home/deploy/.ssh/id_dsa] owner changed to 4000
[2015-01-22T00:11:32+00:00] INFO: template[/home/deploy/.ssh/id_dsa] group changed to 497
[2015-01-22T00:11:32+00:00] INFO: template[/home/deploy/.ssh/id_dsa] mode changed to 600
[2015-01-22T00:11:32+00:00] INFO: Processing directory[/srv/www/ariadna/shared/cached-copy] action delete (deploy::rails line 48)
[2015-01-22T00:11:32+00:00] INFO: Processing ruby_block[change HOME to /home/deploy for source checkout] action run (deploy::rails line 56)
[2015-01-22T00:11:32+00:00] INFO: ruby_block[change HOME to /home/deploy for source checkout] called
[2015-01-22T00:11:32+00:00] INFO: Processing deploy[/srv/www/ariadna] action deploy (deploy::rails line 65)
[2015-01-22T00:11:34+00:00] INFO: deploy[/srv/www/ariadna] cloning repo git#bitbucket.org:viktorpr7/ariadna-beta.git to /srv/www/ariadna/shared/cached-copy
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] checked out branch: master onto: deploy reference: 6450219b5689de565864424e4fe48da22700e088
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] synchronizing git submodules
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] enabling git submodules
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set user to deploy
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set group to nginx
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] copied the cached checkout to /srv/www/ariadna/releases/20150122001132
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set user to deploy
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set group to nginx
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] running callback before_migrate
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] created directories before symlinking: tmp,public,config
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] linked shared paths into current release: system => public/system, pids => tmp/pids, log => log
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] made pre-migration symlinks
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set user to deploy
[2015-01-22T00:11:36+00:00] INFO: deploy[/srv/www/ariadna] set group to nginx
[2015-01-22T00:11:36+00:00] INFO: Gemfile detected. Running bundle install.
[2015-01-22T00:11:36+00:00] INFO: sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development'
================================================================================
Error executing action `deploy` on resource 'deploy[/srv/www/ariadna]'
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '5'
---- Begin output of sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 ----
STDOUT: Fetching gem metadata from https://rubygems.org/...........
Installing rake (10.4.2)
Installing i18n (0.7.0)
Installing json (1.8.2)
Installing minitest (5.5.1)
Installing thread_safe (0.3.4)
Installing tzinfo (1.2.2)
Installing activesupport (4.1.9)
Installing builder (3.2.2)
Installing erubis (2.7.0)
Installing actionview (4.1.9)
Installing rack (1.5.2)
Installing rack-test (0.6.3)
Installing actionpack (4.1.9)
Installing mime-types (2.4.3)
Installing mail (2.6.3)
Installing actionmailer (4.1.9)
Installing activemodel (4.1.9)
Installing arel (5.0.1.20140414130214)
Installing activerecord (4.1.9)
Installing coffee-script-source (1.8.0)
Installing execjs (2.2.2)
Installing coffee-script (2.3.0)
Installing thor (0.19.1)
Installing railties (4.1.9)
Installing coffee-rails (4.0.1)
Installing hike (1.2.3)
Installing multi_json (1.10.1)
Installing jbuilder (2.2.6)
Installing jquery-rails (3.1.2)
Installing kgio (2.9.2)
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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=/usr/local/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
extconf failed, exit code 1
Gem files will remain installed in /home/deploy/.bundler/ariadna/ruby/2.1.0/gems/mysql2-0.3.16 for inspection.
Results logged to /home/deploy/.bundler/ariadna/ruby/2.1.0/extensions/x86_64-linux/2.1.0/mysql2-0.3.16/gem_make.out
An error occurred while installing mysql2 (0.3.16), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.16'` succeeds before bundling.
STDERR:
---- End output of sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 ----
Ran sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 returned 5
Cookbook Trace:
---------------
/var/lib/aws/opsworks/cache.stage2/cookbooks/opsworks_commons/libraries/shellout.rb:8:in `shellout'
/var/lib/aws/opsworks/cache.stage2/cookbooks/rails/libraries/rails_configuration.rb:41:in `bundle'
/var/lib/aws/opsworks/cache.stage2/cookbooks/deploy/definitions/opsworks_deploy.rb:105:in `block (3 levels) in from_file'
Resource Declaration:
---------------------
# In /var/lib/aws/opsworks/cache.stage2/cookbooks/deploy/definitions/opsworks_deploy.rb
65: deploy deploy[:deploy_to] do
66: provider Chef::Provider::Deploy.const_get(deploy[:chef_provider])
67: keep_releases deploy[:keep_releases]
68: repository deploy[:scm][:repository]
69: user deploy[:user]
70: group deploy[:group]
71: revision deploy[:scm][:revision]
72: migrate deploy[:migrate]
73: migration_command deploy[:migrate_command]
74: environment deploy[:environment].to_hash
75: purge_before_symlink(deploy[:purge_before_symlink]) unless deploy[:purge_before_symlink].nil?
76: create_dirs_before_symlink(deploy[:create_dirs_before_symlink])
77: symlink_before_migrate(deploy[:symlink_before_migrate])
78: symlinks(deploy[:symlinks]) unless deploy[:symlinks].nil?
79: action deploy[:action]
80:
81: if deploy[:application_type] == 'rails' && node[:opsworks][:instance][:layers].include?('rails-app')
82: restart_command "sleep #{deploy[:sleep_before_restart]} && #{node[:opsworks][:rails_stack][:restart_command]}"
83: end
84:
Compiled Resource:
------------------
# Declared in /var/lib/aws/opsworks/cache.stage2/cookbooks/deploy/definitions/opsworks_deploy.rb:65:in `block in from_file'
deploy("/srv/www/ariadna") do
params {:deploy_data=>{"deploy_to"=>"/srv/www/ariadna", "chef_provider"=>"Timestamped", "keep_releases"=>5, "current_path"=>"/srv/www/ariadna/current", "document_root"=>"public", "ignore_bundler_groups"=>["test", "development"], "absolute_document_root"=>"/srv/www/ariadna/current/public/", "rake"=>"/usr/local/bin/rake", "migrate"=>true, "migrate_command"=>"if [ -f Gemfile ]; then echo 'OpsWorks: Gemfile found - running migration with bundle exec' && /usr/local/bin/bundle exec /usr/local/bin/rake db:migrate; else echo 'OpsWorks: no Gemfile - running plain migrations' && /usr/local/bin/rake db:migrate; fi", "rails_env"=>"production", "action"=>"deploy", "user"=>"deploy", "group"=>"nginx", "shell"=>"/bin/bash", "home"=>"/home/deploy", "sleep_before_restart"=>0, "stack"=>{"needs_reload"=>true}, "enable_submodules"=>true, "shallow_clone"=>false, "delete_cached_copy"=>true, "purge_before_symlink"=>["log", "tmp/pids", "public/system"], "create_dirs_before_symlink"=>["tmp", "public", "config"], "symlink_before_migrate"=>{"config/database.yml"=>"config/database.yml", "config/memcached.yml"=>"config/memcached.yml"}, "symlinks"=>{"system"=>"public/system", "pids"=>"tmp/pids", "log"=>"log"}, "environment"=>{"RAILS_ENV"=>"production", "RUBYOPT"=>"", "RACK_ENV"=>"production", "HOME"=>"/home/deploy"}, "environment_variables"=>{}, "ssl_support"=>false, "auto_npm_install_on_deploy"=>true, "nodejs"=>{"restart_command"=>"monit restart node_web_app_ariadna", "stop_command"=>"monit stop node_web_app_ariadna", "port"=>80}, "application"=>"ariadna", "application_type"=>"rails", "auto_bundle_on_deploy"=>true, "deploying_user"=>"arn:aws:iam::673556511701:root", "domains"=>["ariadna"], "mounted_at"=>nil, "restart_command"=>nil, "ssl_certificate"=>nil, "ssl_certificate_key"=>nil, "ssl_certificate_ca"=>nil, "scm"=>{"scm_type"=>"git", "repository"=>"git#bitbucket.org:viktorpr7/ariadna-beta.git", "revision"=>"master", "ssh_key"=>"-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA56JKs1w7Bvvq4eRElpPcIQCLTIKD6JrnyuKA2RbNrRxTWX8k\n3rtk9MQabphAfc6yN/Upe4bOqakeiGjTNEnrOGM1qKa2YALFSH9ZfuulfMI4+hLd\ns9vsD5mlMi92ZmitwiAlqe0jhXQyO+6OfHIASY0kuThfCZnRMyHiRzUEeacpatSh\nE8Ygy2SIQBrYQ9XuhwMCWMIuT1IbgdUi5B4JLrj74hfFimW5aH1wRBqPkprfHVfg\n8YPGWKU+rLZMO9IA7OtpCUvXQGryyMQsOB5b/w3aCg4GlWmRVtcGONd8kW0vourg\nGJO7VDGZ3Y1m8PEryjncWTQwyv+XKu6+i5tmTQIDAQABAoIBAAbOqC9ZOIreAGsf\nEDz0n3WA1JctBr9hPgqiWXMHzoeV24U3zVeWXkMrODOj2dFYr7ghRlTRA2XNCI6t\ntfdFbNo9YChSre1oZ2/X/kNSnYxrEM2YnFda0TcsJsSwzGP6E5Eu7Kxvwal8XrWQ\nLzPNDeEbesbOt0xK7vD3v/SjxDvm9WqKVbf14eCqN1EYxOSTq4SqWq9+NvogAG09\ny2xyfSK5G5QsbJ41CGLxBSsk1SRyFvgXgHUPI05Gqz4EV8mKhp5nD9n7KYtbOH5I\nD7XvnlTLQNclB2db6+1zp0YWGbHgMoIZScPUI6XE653uXUNg5TuDV+lHnQVouANC\nqS+0BUECgYEA86tf65jH4f1uDN140LjDgmCMgb4IjpyfNDZ7M6iXtvpLJn8w2MRo\nuYOUDqEOWpYY6uYs4tEPgdmO786G3JgxAgzHWCgK9go+IS6BMjIRT77LjtJCHwF0\nZEF5q14zKDycuCcJiI80Oteo2p9xUQ0bZfAiQqgyOdLQF/2++zjMHdkCgYEA81sA\nxSAhW3EscvhJgeoqmdRWKBnw2u8t6YWKOm6TqxlIC3JR85nn622hU0KMkVPNy4S6\nvKgVlNtV6CoA8NnRW0NXEpoj93kQZPEdwrrol8KS5AVOF2B5qD+wMwNl4xafgHuk\nN8DyDA//ZDarNlssnrhBJbRCyehFGzmXYS5+35UCgYEAzk9+0pq0Oqr6P9hRD+Aw\nYTZgIQYGdsEzpuCuJcoMUrfPY1PzxsVdqh03Ab/pyFcn19N1k8HQ8G+FL5Pc6e/O\nJt8s9X5J8ZIwkqWubBKqR6vS7CUoKNpxcuVhH/CNPfc79kvPLZmabmvkot628ho3\n5XKRf4CrrfvJh1aoGks3v9kCgYEArwJkJF+9/X//YlMyse5QYr50k3RMZXaawxTZ\nWrpJEkQlLq4xR4oIYqQ93529b4ogNtumW6RZmOq/9i227X8H86UTCnq1oPR8mMta\nBr/aI8G3V6qFBYTJGPlsYtNvw4dyf7jrWXk12PzsQwqZyIZ7KU4C8/WWDpQulqyt\nNCN29J0CgYEAyUPOorkU1iwlg6pBgBKm5GVq8YGb8INzODrox+u8MJRFHT6BujY1\nQnF3sy84OWW9x79PQmzvYSpjVsD3GtIcvd4mDQ5GdB+XJaldO//3LhQl9yNG/OAd\nodNSsgut3SfHUR5uCb06Q+FJo8CHus/r1vzNpfL9er01RpXhVZOYUoY=\n-----END RSA PRIVATE KEY-----", "user"=>nil, "password"=>nil}, "database"=>{}, "memcached"=>{"host"=>nil, "port"=>11211}}, :app=>"ariadna", :name=>nil}
provider Chef::Provider::Deploy::Timestamped
action [:deploy]
updated true
updated_by_last_action true
retries 0
retry_delay 2
deploy_to "/srv/www/ariadna"
environment {"RAILS_ENV"=>"production", "RUBYOPT"=>"", "RACK_ENV"=>"production", "HOME"=>"/home/deploy"}
repository_cache "cached-copy"
purge_before_symlink ["log", "tmp/pids", "public/system"]
create_dirs_before_symlink ["tmp", "public", "config"]
symlink_before_migrate {"config/database.yml"=>"config/database.yml", "config/memcached.yml"=>"config/memcached.yml"}
symlinks {"system"=>"public/system", "pids"=>"tmp/pids", "log"=>"log"}
revision "master"
migrate true
remote "origin"
enable_submodules true
scm_provider Chef::Provider::Git
keep_releases 5
enable_checkout true
checkout_branch "deploy"
cookbook_name "deploy"
recipe_name "rails"
repo "git#bitbucket.org:viktorpr7/ariadna-beta.git"
user "deploy"
group "nginx"
migration_command "if [ -f Gemfile ]; then echo 'OpsWorks: Gemfile found - running migration with bundle exec' && /usr/local/bin/bundle exec /usr/local/bin/rake db:migrate; else echo 'OpsWorks: no Gemfile - running plain migrations' && /usr/local/bin/rake db:migrate; fi"
restart_command "sleep 0 && ../../shared/scripts/unicorn clean-restart"
before_migrate #<Proc:0x007f21fcfabcc8#/var/lib/aws/opsworks/cache.stage2/cookbooks/deploy/definitions/opsworks_deploy.rb:100>
shared_path "/srv/www/ariadna/shared"
destination "/srv/www/ariadna/shared/cached-copy"
current_path "/srv/www/ariadna/current"
end
[2015-01-22T00:12:05+00:00] INFO: Running queued delayed notifications before re-raising exception
[2015-01-22T00:12:05+00:00] ERROR: Running exception handlers
[2015-01-22T00:12:05+00:00] ERROR: Exception handlers complete
[2015-01-22T00:12:05+00:00] FATAL: Stacktrace dumped to /var/lib/aws/opsworks/cache.stage2/chef-stacktrace.out
[2015-01-22T00:12:05+00:00] ERROR: deploy[/srv/www/ariadna] (deploy::rails line 65) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '5'
---- Begin output of sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 ----
STDOUT: Fetching gem metadata from https://rubygems.org/...........
Installing rake (10.4.2)
Installing i18n (0.7.0)
Installing json (1.8.2)
Installing minitest (5.5.1)
Installing thread_safe (0.3.4)
Installing tzinfo (1.2.2)
Installing activesupport (4.1.9)
Installing builder (3.2.2)
Installing erubis (2.7.0)
Installing actionview (4.1.9)
Installing rack (1.5.2)
Installing rack-test (0.6.3)
Installing actionpack (4.1.9)
Installing mime-types (2.4.3)
Installing mail (2.6.3)
Installing actionmailer (4.1.9)
Installing activemodel (4.1.9)
Installing arel (5.0.1.20140414130214)
Installing activerecord (4.1.9)
Installing coffee-script-source (1.8.0)
Installing execjs (2.2.2)
Installing coffee-script (2.3.0)
Installing thor (0.19.1)
Installing railties (4.1.9)
Installing coffee-rails (4.0.1)
Installing hike (1.2.3)
Installing multi_json (1.10.1)
Installing jbuilder (2.2.6)
Installing jquery-rails (3.1.2)
Installing kgio (2.9.2)
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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=/usr/local/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
extconf failed, exit code 1
Gem files will remain installed in /home/deploy/.bundler/ariadna/ruby/2.1.0/gems/mysql2-0.3.16 for inspection.
Results logged to /home/deploy/.bundler/ariadna/ruby/2.1.0/extensions/x86_64-linux/2.1.0/mysql2-0.3.16/gem_make.out
An error occurred while installing mysql2 (0.3.16), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.16'` succeeds before bundling.
STDERR:
---- End output of sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 ----
Ran sudo su - deploy -c 'cd /srv/www/ariadna/releases/20150122001132 && /usr/local/bin/bundle install --path /home/deploy/.bundler/ariadna --without=test development' 2>&1 returned 5
[2015-01-22T00:12:05+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
Updated:
I'm using Ubuntu 14.04, I added the libmysqlclient-dev but still the same error when I try deploy, here you can see the Layer configuration:
I needed to restart the instance
You'll need to intall the relevent OS packages.
Steps:
Log into Opsworks
Click Layers on the left sidebar.
Find and click Recipes within the Rails App Server (or whatever your server is).
Click the Edit button.
From there towards the bottom you will have to add the packages you need.
I think it'll be:
mysql-devel
mysql
Edit The correct package, as you added later in your question, is libmysqlclient-dev.
This should fix your issue.
You need to install the mysql client libraries. The exact package name varies based on OS but something like package 'mysql-client-dev'.
I was trying to create a new Rails project. When I ran bundle install, I got an error for some reason. Can anyone tell me why this error is occurred and how to fix it?
I ran: bundle install
Result:
Fetching gem metadata from https://rubygems.org/...........
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...
Using i18n (0.6.9)
Using rake (10.1.1)
Using minitest (4.7.5)
Using multi_json (1.8.2)
Using tzinfo (0.3.38)Using atomic (1.1.14)
Using builder (3.1.4)
Using erubis (2.7.0)Using rack (1.5.2)
Using mime-types (1.25.1)
Using polyglot (0.3.3)
Using activerecord-deprecated_finders (1.0.3)
Using arel (4.0.1)
Using bundler (1.5.0.rc.1)
Using coffee-script-source (1.6.3)
Using execjs (2.0.2)
Using thor (0.18.1)Using hike (1.2.3)
Using json (1.8.1)
Using tilt (1.4.1)
Using sass (3.2.13)
Using thread_safe (0.1.3)
Using rack-test (0.6.2)
Using treetop (1.4.15)
Using coffee-script (2.2.0)
Using rdoc (3.12.2)
Using uglifier (2.4.0)Using sprockets (2.10.1)
Using activesupport (4.0.2)
Using mail (2.5.4)
Using sdoc (0.3.20)
Using actionpack (4.0.2)
Using jbuilder (1.5.3)
Using actionmailer (4.0.2)
Using activemodel (4.0.2)
Using railties (4.0.2)
Using sprockets-rails (2.0.1)
Using coffee-rails (4.0.1)
Using jquery-rails (3.0.4)
Using activerecord (4.0.2)
Using sass-rails (4.0.1)
Using turbolinks (2.1.0)
Using rails (4.0.2)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/home/olcay/.rbenv/versions/2.0.0-p353/bin/ruby extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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/olcay/.rbenv/versions/2.0.0-p353/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
Gem files will remain installed in /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14 for inspection.
Results logged to /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14/ext/mysql2/gem_make.out
An error occurred while installing mysql2 (0.3.14), and Bundler cannot
continue.
Make sure that `gem install mysql2 -v '0.3.14'` succeeds before
bundling.
I ran: gem install mysql2 -v '0.3.14'
Result:
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.
/home/olcay/.rbenv/versions/2.0.0-p353/bin/ruby extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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/olcay/.rbenv/versions/2.0.0-p353/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
Gem files will remain installed in /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14 for inspection.
Results logged to /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14/ext/mysql2/gem_make.out
I ran: bundle install
Result:
Fetching gem metadata from https://rubygems.org/...........
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...
Using rake (10.1.1)
Using i18n (0.6.9)
Using minitest (4.7.5)
Using multi_json (1.8.2)
Using atomic (1.1.14)
Using tzinfo (0.3.38)
Using builder (3.1.4)
Using erubis (2.7.0)
Using mime-types (1.25.1)
Using polyglot (0.3.3)
Using activerecord-deprecated_finders (1.0.3)
Using arel (4.0.1)
Using coffee-script-source (1.6.3)
Using execjs (2.0.2)
Using bundler (1.5.0.rc.1)
Using hike (1.2.3)
Using thor (0.18.1)
Using json (1.8.1)
Using tilt (1.4.1)
Using sass (3.2.13)
Using thread_safe (0.1.3)
Using treetop (1.4.15)
Using coffee-script (2.2.0)
Using rdoc (3.12.2)
Using uglifier (2.4.0)
Using activesupport (4.0.2)
Using rack (1.5.2)
Using mail (2.5.4)
Using sdoc (0.3.20)
Using activemodel (4.0.2)Using jbuilder (1.5.3)
Using rack-test (0.6.2)Using sprockets (2.10.1)
Using activerecord (4.0.2)
Using actionpack (4.0.2)
Using actionmailer (4.0.2)
Using railties (4.0.2)
Using sprockets-rails (2.0.1)
Using coffee-rails (4.0.1)
Using jquery-rails (3.0.4)
Using rails (4.0.2)
Using sass-rails (4.0.1)
Using turbolinks (2.1.0)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/home/olcay/.rbenv/versions/2.0.0-p353/bin/ruby extconf.rb
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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/olcay/.rbenv/versions/2.0.0-p353/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
Gem files will remain installed in /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14 for inspection.
Results logged to /home/olcay/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14/ext/mysql2/gem_make.out
An error occurred while installing mysql2 (0.3.14), and Bundler cannot
continue.
Make sure that `gem install mysql2 -v '0.3.14'` succeeds before
bundling.
Don't mark as duplicate, just send the link of the question and tell me to delete this post.
My operating system is Ubuntu.
It sounds like you don't have the libmysqlclient-dev package installed:
sudo apt-get install libmysqlclient-dev
gem install mysql2
Then try:
bundle install
I'm trying to install the mysql2 gem with Rails 3.2.3 and it's failing:
★ bundle install
Fetching gem metadata from https://rubygems.org/.........
Using rake (0.9.2.2)
Using i18n (0.6.0)
Using multi_json (1.2.0)
Using activesupport (3.2.3)
Using builder (3.0.0)
Using activemodel (3.2.3)
Using erubis (2.7.0)
Using journey (1.0.3)
Using rack (1.4.1)
Using rack-cache (1.2)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.1.2)
Using actionpack (3.2.3)
Using mime-types (1.18)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.4.4)
Using actionmailer (3.2.3)
Using arel (3.0.2)
Using tzinfo (0.3.32)
Using activerecord (3.2.3)
Using activeresource (3.2.3)
Using bundler (1.1.3)
Using coffee-script-source (1.2.0)
Using execjs (1.3.0)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using json (1.6.6)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.2.3)
Using coffee-rails (3.2.2)
Using jquery-rails (2.0.2)
Installing mysql2 (0.3.11) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/rarneson/.rvm/rubies/ruby-1.9.3-p125/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** 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
--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=/Users/rarneson/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
--with-mysql-config
--without-mysql-config
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mlib
--without-mlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-zlib
--without-zlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-socketlib
--without-socketlib
--with-mysqlclientlib
--without-mysqlclientlib
--with-nsllib
--without-nsllib
--with-mysqlclientlib
--without-mysqlclientlib
--with-mygcclib
--without-mygcclib
--with-mysqlclientlib
--without-mysqlclientlib
Gem files will remain installed in /Users/rarneson/.rvm/gems/ruby-1.9.3-p125/gems/mysql2-0.3.11 for inspection.
Results logged to /Users/rarneson/.rvm/gems/ruby-1.9.3-p125/gems/mysql2-0.3.11/ext/mysql2/gem_make.out
An error occured while installing mysql2 (0.3.11), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.11'` succeeds before bundling.
I'm running bundle install and this is in my Gemfile:
gem 'mysql2', '~> 0.3.11'
I've currently got MySQL running through MAMP. I'm not sure if this is a bad idea and I should run a vanilla MySQl but it seems my current problem is just getting the gem installed. I've seen quite a few of these problems here on stackoverflow but all seem a bit different or have really complicated solutions. Is there something I'm missing? Something simple? Something stupid? I can provide additional info from the out file if necessary. I've read that some people use SQLite for dev and test then MySQL in prod but that sounds like a pretty horrible idea.
From https://github.com/brianmario/mysql2/issues/8
just copied this in the console
sudo apt-get install mysql-client libmysqlclient-dev
and worked!!
I used Homebrew for Mac to install mysql:
brew install mysql
Then I used a gem command to install the mysql2 gem:
sudo gem install mysql2
This is mostly due to lack of mysql headers, Try to install mysql developer (mysql-devel) packages
Normally this error comes when 'libmysqlclient-dev' package is missing
if you are on linux try this link
if you are on windows this url might help you
I just ran into the same problem, using OS X Sierra and MAMP and Rails 5. I successfully installed the gem via
gem install mysql2 -- --with-mysql-config=/Applications/MAMP/Library/bin/mysql_config
After that, bundle install worked just fine.
I ended up just installing a fresh copy of MySQL and not using MAMP and that did the trick. Also had to be sure to install the 64-bit version, not 32-bit.
You can follow this thread Errors Installing mysql2 gem via the Bundler which explains the solution for Centos and this problem will be fixed, if you tweak the commands w.r.t your OS and you can be able to successfully install the mysql2 gem.
Just add MAMP mysql to PATH, then you can run bundle install as per normal.
$ /Applications/MAMP/Library/bin/mysql --host=localhost -uroot -proot
source: http://blog-en.mamp.info/2009/08/using-mysql-command-line-with-mamp.html
When I got this error, I was able to fix this by running:
gem install devtools