sqlite3 gem fails to install

南笙酒味 提交于 2019-11-27 13:15:35

I had an almost similar problem as you where I had sqlite3 installed and yet the sqlite3 gem would not install. I was seeing an error message as follows,

user-name-rajas-macbook-pro:rails3 user-namer$ gem install sqlite3
Building native extensions.  This could take a while...
    ERROR:  Error installing sqlite3:
    ERROR: Failed to build gem native extension.

        /Users/user-namer/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_libversion_number() in -lsqlite3... no
sqlite3 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
    --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/user-namer/.rvm/rubies/ruby-1.9.2-p180/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
    --with-sqlite3lib
    --without-sqlite3lib


Gem files will remain installed in /Users/user-namer/.rvm/gems/ruby-1.9.2-    p180@rails_3/gems/sqlite3-1.3.3 for inspection.
Results logged to /Users/user-namer/.rvm/gems/ruby-1.9.2-p180@rails_3/gems/sqlite3-    1.3.3/ext/sqlite3/gem_make.out

Here is what worked for me

gem install sqlite3 -- --with-sqlite3-dir=/opt/local

I was following the Rails3 in Action book with rvm using ruby 1.9.2.p180 and rails 3.1.0.rc6 using Mac OS X 10.5.8 (Leopard) and when I ran:

rake cucumber:ok

I got:

Please install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` (can't activate sqlite3 (~> 1.3.4, runtime), already activated sqlite3-1.3.3. Make sure all dependencies are added to Gemfile.) 

I then did:

gem install sqlite3 -- --with-sqlite3-dir=/opt/local

Followed by:

bundle install

Hopefully, I will find my own answer on the Internet when sqlite 1.3.5 is required.

Sounds like you haven't installed XCode.

For osx, make sure you have Xcode installed and you have accepted the terms. For me, I had not agreed to the terms (for whatever reason, perhaps Xcode was recently installed or updated on my computer).

  1. Open Xcode
  2. If a pop up appears then agree to the terms (if you do not get a pop up then you probably have already accepted the terms).
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!