1

I'm trying to use Heroku Taps but after "gem install taps", I'm still getting the following error when I do "heroku db:pull":

heroku db:pull

Taps Load Error: dlopen(/Users/yves/.rvm/gems/ruby-1.8.7-p302/gems/sqlite3-1.3.3/lib/sqlite3/sqlite3_native.bundle, 9): no suitable image found.  Did find:
    /Users/yves/.rvm/gems/ruby-1.8.7-p302/gems/sqlite3-1.3.3/lib/sqlite3/sqlite3_native.bundle: mach-o, but wrong architecture - /Users/yves/.rvm/gems/ruby-1.8.7-p302/gems/sqlite3-1.3.3/lib/sqlite3/sqlite3_native.bundle
You may need to install or update the taps gem to use db commands.

My setup:

Homebrew

RVM

rvm list

rvm rubies

   jruby-1.5.1 [ x86_64-java ]
   ree-1.8.7-2010.02 [ i386 ]
   ruby-1.8.7-p160 [ i386 ]
=> ruby-1.8.7-p302 [ i386 ]
   ruby-head [ i386 ]

GEMS

gem list

...
heroku (1.17.10)
...
sqlite3 (1.3.3)
sqlite3-ruby (1.3.3)
taps (0.3.15)
...
Yves Van Broekhoven
  • 344
  • 1
  • 3
  • 13

2 Answers2

2

Ok, think I solved it. I installed ruby 1.8.7 again with RVM and that seemed to do the trick. Not sure why though...

rvm install ruby-1.8.7-p302
simonmenke
  • 2,819
  • 19
  • 28
Yves Van Broekhoven
  • 344
  • 1
  • 3
  • 13
0

The error message indicates that the Heroku bundle includes a native version sqlite gem that is not compatible with the i386 architecture.

Try to do a gem update sqlite3 sqlite3-ruby

Updated: On my Mac OS X Snow Leopard machine, I use rvm to manage ruby 1.9.2 and rails 3.0.3, but I use the system installed ruby 1.8.7 for ruby 1.9 and rails 2.3.8. development. I switch between ruby 1.8 and 1.9 by using 'rvm system' and 'rvm default' (I set up 1.9.2 as my default in rvm.

I noticed when I am running 'rvm system', I get the following:

$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
$ rails -v
Rails 2.3.8
$ gem list --local | grep taps
taps (0.3.15, 0.3.12, 0.3.10, 0.2.26, 0.2.25)
$ gem list --local | grep sqlite
sqlite3 (1.3.3)
sqlite3-ruby (1.3.3, 1.3.1, 1.2.5, 1.2.4)

Hope this helps.

Steve Wilhelm
  • 6,200
  • 2
  • 32
  • 36