-->

Sqlite3 error after Rails 3 (beta 4) install

2019-02-24 06:40发布

问题:

After Installing Rails 3, I get the following error regarding Sqlite3 when I try to do a migrate:

dlsym(0x1037e5f10, Init_sqlite3_native): symbol not found - /Library/Ruby/Gems/1.8/gems/sqlite3-ruby-1.3.0/lib/sqlite3/sqlite3_native.bundle

I am using Snow Leopard, if that makes a difference.

回答1:

I faced the same issue. The problem is that your sqlite-ruby interface is not installed properly in your snow leopard. To install that , use the following :-

sudo gem install sqlite3-ruby

But before installing that check if a proper gcc is installed in your Mac.Use the below lines to check that :-
ok First of all check if the follwoing is installed:-

$gcc -v     

If not then you have to install Mac developers xcode package in your snow leopard first.
You can download using a free registration from this site:- http://developer.apple.com/devcenter/mac

For more reference take a look into my post : How to install ruby interface for sqlite3 in Mac snow leopard?

If you face the problem the problem even after trying these please let me know the error your facing. Because I faced all the error before making my snow leopard work ;). So I 'm familiar to most of the errors and blunders we usually make ;) !!



回答2:

Hmm, looks like maybe something isn't compiled correctly. Maybe a gem was compiled on an older system or pre-upgrading to snow leopard? It may be that the sqlite binary is 64 bit but the native ruby extension isn't.

I'd try this:

  • Install RVM (Or create a new gemset if you're already using it.)
  • Using a fresh rvm gemset, re-install rails 3
  • Do bundle install to get all your gems loaded

If the problem goes away then it's likely that your libraries aren't all compiled the same way. This can happen when upgrading to snow leopard from a previous version of Mac OS X. The upgrade would have updated the sqlite binary but not any gems you had compiled yourself, like the sqlite bindings for ruby.



回答3:

I'm not sure how it's done with Snow Leopard but you need to install The sqlite dev package, libsqlite3-dev

Then install the gem, sqlite3-ruby



回答4:

Just got to the GEMFILE inside you project and comment out the gems that you do not require.