views:

70

answers:

1
+1  Q: 

RVM, Rails Errors

I installed RVM, then used it to install ruby-1.9.2 and then used rubygems to install rails 3.0. It lets me create a new app but then when I change to the app's root and attempt to generate a scaffold I get this error:

Could not find gem 'sqlite3-ruby (>= 0, runtime)' in any of the gem sources.
Try running `bundle install`.

So then I ran 'bundle install' and everything looked to install fine until it got to sqlite3-ruby and gave me this huge error message:

Installing sqlite3-ruby (1.3.1) with native extensions /home/connor/.rvm/rubies/ruby-1.9.2-p0/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)

/home/connor/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb 
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal' or 'yum install sqlite3-devel'
*** 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/connor/.rvm/rubies/ruby-1.9.2-p0/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


Gem files will remain installed in /home/connor/.rvm/gems/ruby-1.9.2-p0/gems/sqlite3-ruby-1.3.1 for inspection.
Results logged to /home/connor/.rvm/gems/ruby-1.9.2-p0/gems/sqlite3-ruby-1.3.1/ext/sqlite3/gem_make.out
from /home/connor/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems/installer.rb:486:in `block in build_extensions'
from /home/connor/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems/installer.rb:446:in `each'
from /home/connor/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems/installer.rb:446:in `build_extensions'
from /home/connor/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems/installer.rb:198:in `install'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/source.rb:100:in `install'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/installer.rb:55:in `block in run'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/spec_set.rb:12:in `block in each'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/spec_set.rb:12:in `each'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/spec_set.rb:12:in `each'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/installer.rb:44:in `run'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/installer.rb:8:in `install'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/cli.rb:221:in `install'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/vendor/thor/task.rb:22:in `run'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/vendor/thor.rb:246:in `dispatch'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/lib/bundler/vendor/thor/base.rb:389:in `start'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/gems/bundler-1.0.3/bin/bundle:13:in `<top (required)>'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/bin/bundle:19:in `load'
from /home/connor/.rvm/gems/ruby-1.9.2-p0@global/bin/bundle:19:in `<main>'

Anyone know what's causing these errors? RVM?

+6  A: 

No, it's not RVM's fault. It means you don't have SQLite3 library installed.

/home/connor/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb 
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal' or 'yum install sqlite3-devel'
*** 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.

You need to install the SQLite3 library and development header in order to compile and install the SQLite gem.

Simone Carletti