Sqlite 3 install error on Heroku, Rails 3.1

Hello Rails people.

I tried to push a Rails 3.1 app ( created using cedar stack) to Heroku
and I encountered the following error

Installing sqlite3 (1.3.4) with native extensions Unfortunately, a
fatal error has occurred. Please report this error to the Bundler
issue tracker at Issues · rubygems/bundler · GitHub so that we
can fix it. Thanks!
/usr/local/lib/ruby/1.9.1/rubygems/installer.rb:483:in `rescue
in block in build_extensions’: ERROR: Failed to build gem native
extension. (Gem::Installer::ExtensionBuildError)
/usr/local/bin/ruby extconf.rb
checking for sqlite3.h… no
sqlite3.h is missing. Try ‘port install sqlite3 +universal’
or ‘yum install sqlite3-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_z66vpx0uo7v1/
vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.4 for inspection.

the message indicates something serious is going on. Can it be fixed?

On Aug 9, 3:29am, Karthikeyan [email protected] wrote:

Hello Rails people.

I tried to push a Rails 3.1 app ( created using cedar stack) to Heroku
and I encountered the following error

Installing sqlite3 (1.3.4) with native extensions Unfortunately, a
fatal error has occurred. Please report this error to the Bundler
issue tracker athttps://github.com/carlhuda/bundler/issuesso that we
can fix it. Thanks!

SQLite3 is not available as database on Heroku.

Only database available is PostgreSQL:

http://devcenter.heroku.com/articles/database

You need to modify your Gemfile to limit sqlite3 to development/test
environment and add ‘pg’ gem for production one.


Luis L.

Maybe it’s because Heroku doesn’t use sqlite in production, instead it
uses Postgres.

I think you should try to restrict the sqlite3 gem in your Gemfile only
to the development environment.

Cheers!

Rodrigo Alves V.

http://twitter.com/rodrigoalvieira

if using Rails 3.1 add
gem ‘pg’, :group => :production
gem ‘pg’, :group => [:development, :test]
into gemfile

inside gemfile

gem ‘sqlite3’, :group => [:development, :test]
gem ‘pg’, :group => [:production]

Having the same issue. I’ve installed pg and appended my Gemfile.

How do you restrict the sqlite3 gem to only the dev environment?