Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby

ruby on rails "git push heroku master" problem

This problem is related to the video ‘deploying treebook to heroku’. I did as the video instructed.However, I still get the same "sqlite" error. I hope someone could help me resolve this issue. the error is below:

Counting objects: 177, done. Delta compression using up to 2 threads. Compressing objects: 100% (159/159), done. Writing objects: 100% (177/177), 99.59 KiB, done. Total 177 (delta 33), reused 0 (delta 0)

-----> Ruby/Rails app detected -----> WARNING: Removing Gemfile.lock because it was generated on Windows. Bundler will do a full resolve so native gems are handled properly. This may result in unexpected gem versions being used in your app. -----> Installing dependencies using Bundler version 1.3.2 Running: bundle install --without development:test --path vendor/bundle - -binstubs vendor/bundle/bin Fetching gem metadata from https://rubygems.org/........... Fetching gem metadata from https://rubygems.org/.. Resolving dependencies... Installing rake (10.0.4) Installing i18n (0.6.1) Installing multi_json (1.7.3) Installing activesupport (3.2.13) Installing builder (3.0.4) Installing activemodel (3.2.13) Installing erubis (2.7.0) Installing journey (1.0.4) Installing rack (1.4.5) Installing rack-cache (1.2) Installing rack-test (0.6.2) Installing hike (1.2.2) Installing tilt (1.4.1) Installing sprockets (2.2.2) Installing actionpack (3.2.13) Installing mime-types (1.23) Installing polyglot (0.3.3) Installing treetop (1.4.12) Installing mail (2.5.4) Installing actionmailer (3.2.13) Installing arel (3.0.2) Installing tzinfo (0.3.37) Installing activerecord (3.2.13) Installing activeresource (3.2.13) Installing bcrypt-ruby (3.0.1) Using bundler (1.3.2) Installing coffee-script-source (1.6.2) Installing execjs (1.4.0) Installing coffee-script (2.2.0) Installing rack-ssl (1.3.3) Installing json (1.8.0) Installing rdoc (3.12.2) Installing thor (0.18.1) Installing railties (3.2.13) Installing coffee-rails (3.2.2) Installing orm_adapter (0.4.0) Installing warden (1.2.1) Installing devise (2.2.4) Installing jquery-rails (2.2.1) Installing rails (3.2.13) Installing sass (3.2.9) Installing sass-rails (3.2.6) Installing simple_form (2.1.0) Installing sqlite3 (1.3.7) Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native ex tension. /usr/local/bin/ruby extconf.rb checking for sqlite3.h... no sqlite3.h is missing. Try 'port install sqlite3 +universal' or 'yum install sqlite-devel' and check your shared library search path ( the location where your sqlite3 shared library is located). *** 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-sqlite3-dir --without-sqlite3-dir --with-sqlite3-include --without-sqlite3-include=${sqlite3-dir}/include --with-sqlite3-lib --without-sqlite3-lib=${sqlite3-dir}/lib --enable-local --disable-local Gem files will remain installed in /tmp/build_hhl4yw4dv21f/vendor/bundle/ ruby/1.9.1/gems/sqlite3-1.3.7 for inspection. Results logged to /tmp/build_hhl4yw4dv21f/vendor/bundle/ruby/1.9.1/gems/s qlite3-1.3.7/ext/sqlite3/gem_make.out An error occurred while installing sqlite3 (1.3.7), and Bundler cannot co ntinue. Make sure that gem install sqlite3 -v '1.3.7' succeeds before bundling.

! ! Failed to install gems via Bundler. ! ! Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:mighty-oasis-8504.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:mighty-oasis-8504.git'

D:\ruby\treebook>git push heroku master Counting objects: 177, done. Delta compression using up to 2 threads. Compressing objects: 100% (159/159), done. Writing objects: 100% (177/177), 99.59 KiB, done. Total 177 (delta 33), reused 0 (delta 0)

-----> Ruby/Rails app detected -----> WARNING: Removing Gemfile.lock because it was generated on Windows. Bundler will do a full resolve so native gems are handled properly. This may result in unexpected gem versions being used in your app. -----> Installing dependencies using Bundler version 1.3.2 Running: bundle install --without development:test --path vendor/bundle - -binstubs vendor/bundle/bin Fetching gem metadata from https://rubygems.org/........... Fetching gem metadata from https://rubygems.org/.. Resolving dependencies... Installing rake (10.0.4) Installing i18n (0.6.1) Installing multi_json (1.7.3) Installing activesupport (3.2.13) Installing builder (3.0.4) Installing activemodel (3.2.13) Installing erubis (2.7.0) Installing journey (1.0.4) Installing rack (1.4.5) Installing rack-cache (1.2) Installing rack-test (0.6.2) Installing hike (1.2.2) Installing tilt (1.4.1) Installing sprockets (2.2.2) Installing actionpack (3.2.13) Installing mime-types (1.23) Installing polyglot (0.3.3) Installing treetop (1.4.12) Installing mail (2.5.4) Installing actionmailer (3.2.13) Installing arel (3.0.2) Installing tzinfo (0.3.37) Installing activerecord (3.2.13) Installing activeresource (3.2.13) Installing bcrypt-ruby (3.0.1) Using bundler (1.3.2) Installing coffee-script-source (1.6.2) Installing execjs (1.4.0) Installing coffee-script (2.2.0) Installing rack-ssl (1.3.3) Installing json (1.8.0) Installing rdoc (3.12.2) Installing thor (0.18.1) Installing railties (3.2.13) Installing coffee-rails (3.2.2) Installing orm_adapter (0.4.0) Installing warden (1.2.1) Installing devise (2.2.4) Installing jquery-rails (2.2.1) Installing rails (3.2.13) Installing sass (3.2.9) Installing sass-rails (3.2.6) Installing simple_form (2.1.0) Installing sqlite3 (1.3.7) Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native ex tension. /usr/local/bin/ruby extconf.rb checking for sqlite3.h... no sqlite3.h is missing. Try 'port install sqlite3 +universal' or 'yum install sqlite-devel' and check your shared library search path ( the location where your sqlite3 shared library is located). *** 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-sqlite3-dir --without-sqlite3-dir --with-sqlite3-include --without-sqlite3-include=${sqlite3-dir}/include --with-sqlite3-lib --without-sqlite3-lib=${sqlite3-dir}/lib --enable-local --disable-local Gem files will remain installed in /tmp/build_3ms2z2w198t02/vendor/bundle /ruby/1.9.1/gems/sqlite3-1.3.7 for inspection. Results logged to /tmp/build_3ms2z2w198t02/vendor/bundle/ruby/1.9.1/gems/ sqlite3-1.3.7/ext/sqlite3/gem_make.out An error occurred while installing sqlite3 (1.3.7), and Bundler cannot co ntinue. Make sure that gem install sqlite3 -v '1.3.7' succeeds before bundling.

! ! Failed to install gems via Bundler. ! ! Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:mighty-oasis-8504.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:mighty-oasis-8504.git'

5 Answers

Mo Z
Mo Z
2,911 Points

Heroku does not support sqlite, you need to use the pg gem to use the Heroku Postgres database. Make sure your gem file has

group :production do
gem 'pg'
end

and run bundle install

and don't forget to commit your changes to git, then try to re-push it to heroku

I got it running. Thank you very much

I have another question. I followed along the videos. But when I got to my website, The page is public/index.html even though when I did not find index.html in my public folder.

Mo Z
Mo Z
2,911 Points

Try running

rake routes

This will show you where each page of your website points to, in order to use a root route you have to make sure the public/index.html is deleted, or else it will use it.

Thank you very much for your help. I forgot to commit. I got it working now.

Thanks again