title: Rails - error " An error occurred while installing sqlite3 (1.3.13), and Bundler cannot continue"
body: <p>I am totally new to Git and Ruby on Rails and I'm doing the "The Odin Project", but I've got stucked.</p>
  
  <p>I am trying to deploy the application I've created, using Git to push the master branch up to Heroku.</p>
  
  <p>When I run the command "git push heroku master" I get this log with the follwing mistakes, what it may be?</p>
  
  <pre><code>matteo@matteo-VirtualBox:~/railsbridge/hello_app$ git push heroku master
  Counting objects: 90, done.
  Delta compression using up to 2 threads.
  Compressing objects: 100% (76/76), done.
  Writing objects: 100% (90/90), 22.03 KiB | 0 bytes/s, done.
  Total 90 (delta 6), reused 0 (delta 0)
  remote: Compressing source files... done.
  remote: Building source:
  remote: 
  remote:  !     Warning: Multiple default buildpacks reported the ability to handle this app. The first buildpack in the list below will be used.
  remote:             Detected buildpacks: Ruby,Node.js
  remote:             See https://devcenter.heroku.com/articles/buildpacks#buildpack-detect-order
  remote: -----&gt; Ruby app detected
  remote: -----&gt; Compiling Ruby/Rails
  remote: -----&gt; Using Ruby version: ruby-2.3.4
  remote: -----&gt; Installing dependencies using bundler 1.15.2
  remote:        Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
  remote:        Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.15.4). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
  remote:        Fetching gem metadata from https://rubygems.org/.........
  remote:        Fetching version metadata from https://rubygems.org/..
  remote:        Fetching dependency metadata from https://rubygems.org/.
  remote:        Fetching rake 12.1.0
  remote:        Installing concurrent-ruby 1.0.5
  remote:        Fetching minitest 5.10.3
  ....
  remote:        Installing turbolinks 5.0.1
  remote:        Fetching activesupport 5.1.4
  remote:        The latest bundler is 1.16.0.pre.3, but you are currently running 1.15.2.
  remote:        To update, run `gem install bundler --pre`
  remote:        Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
  remote:        current directory:
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/gems/sqlite3-1.3.13/ext/sqlite3
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/ruby-2.3.4/bin/ruby -r
  remote:        ./siteconf20171015-278-1swne7x.rb extconf.rb
  remote:        checking for sqlite3.h... no
  remote:        sqlite3.h is missing. Try 'brew install sqlite3',
  remote:        'yum install sqlite-devel' or 'apt-get install libsqlite3-dev'
  remote:        and check your shared library search path (the
  remote:        location where your sqlite3 shared library is located).
  remote:        *** extconf.rb failed ***
  remote:        Could not create Makefile due to some reason, probably lack of necessary
  remote:        libraries and/or headers.  Check the mkmf.log file for more details.  You may
  remote:        need configuration options.
  remote:        Provided configuration options:
  remote:        --with-opt-dir
  remote:        --srcdir=.
  remote:        --curdir
  remote:        --ruby=/tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/ruby-2.3.4/bin/$(RUBY_BASE_NAME)
  remote:        --with-sqlite3-config
  remote:        --without-sqlite3-config
  remote:        --without-sqlite3-lib=${sqlite3-dir}/lib
  remote:        To see why this extension failed to compile, please check the mkmf.log which can
  remote:        be found here:
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/extensions/x86_64-linux/2.3.0/sqlite3-1.3.13/mkmf.log
  remote:        extconf failed, exit code 1
  remote:        Gem files will remain installed in
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/gems/sqlite3-1.3.13
  remote:        for inspection.
  remote:        Results logged to
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/extensions/x86_64-linux/2.3.0/sqlite3-1.3.13/gem_make.out
  remote:        An error occurred while installing sqlite3 (1.3.13), and Bundler cannot
  remote:        continue.
  remote:        Make sure that `gem install sqlite3 -v '1.3.13'` succeeds before bundling.
  remote:        In Gemfile:
  remote:        sqlite3
  remote:        Bundler Output: Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.15.4). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
  remote:        Fetching gem metadata from https://rubygems.org/.........
  remote:        Fetching version metadata from https://rubygems.org/..
  remote:        Fetching dependency metadata from https://rubygems.org/.
  remote:        Fetching rake 12.1.0
  remote:        Fetching concurrent-ruby 1.0.5
  1.4
  remote:        Fetching rb-inotify 0.9.10
  remote:        Installing rb-inotify 0.9.10
  remote:        The latest bundler is 1.16.0.pre.3, but you are currently running 1.15.2.
  remote:        To update, run `gem install bundler --pre`
  remote:        Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
  remote:        
  remote:        current directory:
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/gems/sqlite3-1.3.13/ext/sqlite3
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/ruby-2.3.4/bin/ruby -r
  remote:        ./siteconf20171015-278-1swne7x.rb extconf.rb
  remote:        checking for sqlite3.h... no
  remote:        sqlite3.h is missing. Try 'brew install sqlite3',
  remote:        'yum install sqlite-devel' or 'apt-get install libsqlite3-dev'
  remote:        and check your shared library search path (the
  remote:        location where your sqlite3 shared library is located).
  remote:        *** extconf.rb failed ***
  remote:        Could not create Makefile due to some reason, probably lack of necessary
  remote:        libraries and/or headers.  Check the mkmf.log file for more details.  You may
  remote:        need configuration options.
  remote:        
  remote:        Provided configuration options:
  remote:        --with-opt-dir
  remote:        --without-opt-dir
  remote:        --ruby=/tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/ruby-2.3.4/bin/$(RUBY_BASE_NAME)
  remote:        --with-sqlite3-config
  remote:        --without-sqlite3-lib=${sqlite3-dir}/lib
  remote:        
  remote:        To see why this extension failed to compile, please check the mkmf.log which can
  remote:        be found here:
  remote:        
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/extensions/x86_64-linux/2.3.0/sqlite3-1.3.13/mkmf.log
  remote:        
  remote:        extconf failed, exit code 1
  remote:        
  remote:        Gem files will remain installed in
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/gems/sqlite3-1.3.13
  remote:        for inspection.
  remote:        Results logged to
  remote:        /tmp/build_c400101f4282a4c7d4222ce20d2d35b2/vendor/bundle/ruby/2.3.0/extensions/x86_64-linux/2.3.0/sqlite3-1.3.13/gem_make.out
  remote:        
  remote:        An error occurred while installing sqlite3 (1.3.13), and Bundler cannot
  remote:        continue.
  remote:        Make sure that `gem install sqlite3 -v '1.3.13'` succeeds before bundling.
  remote:        
  remote:        In Gemfile:
  remote:        sqlite3
  remote:  !
  remote:  !     Failed to install gems via Bundler.
  remote:  !     Detected sqlite3 gem which is not supported on Heroku:
  remote:  !     https://devcenter.heroku.com/articles/sqlite3
  remote:  !
  remote:  !     Push rejected, failed to compile Ruby app.
  remote: 
  remote:  !     Push failed
  remote: Verifying deploy...
  remote: 
  remote: !   Push rejected to murmuring-river-60914.
  remote: 
  To https://git.heroku.com/murmuring-river-60914.git
   ! [remote rejected] master -&gt; master (pre-receive hook declined)
  error: failed to push some refs to 'https://git.heroku.com/murmuring-river-60914.git'
  </code></pre>
  
  <p>I have followed the tutorial instruction by setting the Gemfile with this inside:</p>
  
  <pre><code>group :development, :test do
    gem 'sqlite3', '1.3.13'
    gem 'byebug',  '9.0.0', platform: :mri
  end
  
  group :production do
    gem 'pg', '0.20.0'
  end
  </code></pre>