私はrvmを試していて、ruby 1.9.2とrails 3をインストールしました。sqlite3-ruby gem を再インストールする必要があります (rvm はすべての gem を異なるバージョンの ruby ごとに個別に保持するため)。
問題は、試してみると、次のようになることです。
gem install sqlite3-ruby
/home/jenny/.rvm/rubies/ruby-1.9.2-p0/bin/gem:4: warning: Insecure world writable dir /home/jenny/.rvm/gems/ruby-1.9.2-p0/bin in PATH, mode 040777
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
/home/jenny/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_next_stmt()... yes
checking for sqlite3_column_database_name()... yes
checking for sqlite3_enable_load_extension()... no
checking for sqlite3_load_extension()... no
creating Makefile
make
gcc -I. -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1/i686-linux -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1/ruby/backward -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1 -I. -DHAVE_RB_PROC_ARITY -DHAVE_SQLITE3_INITIALIZE -DHAVE_SQLITE3_NEXT_STMT -DHAVE_SQLITE3_COLUMN_DATABASE_NAME -I/usr/local/include -I/opt/local/include -I/sw/local/include -I/usr/include -D_FILE_OFFSET_BITS=64 -fPIC -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long -fPIC -o exception.o -c exception.c
In file included from ./sqlite3_ruby.h:42,
from exception.c:1:
./backup.h:7: error: expected specifier-qualifier-list before ‘sqlite3_backup’
make: *** [exception.o] Error 1
どうすればいいのか本当によくわかりません...以前にこのマシンにsqlite3-rubyをインストールしました(レール2.3.5を使用)このgemを(rvmシステム設定を使用して)再インストールしようとすると、インストールされませんruby 1.8.7環境で、どちらか。
rvm は gem を壊しましたか? 新しいgemは私のOSと互換性がないだけですか(私はopensuse linuxを実行しています)
編集: 通常の Ruby 環境で sqlite3-ruby を再インストール (再インストールではなくアンインストール) しようとすると、同じエラーが発生しますが、gem リストに sqlite3-ruby が表示されます (何らかの方法でバックアップから復元されているかどうかはわかりませんが、またはエラーにもかかわらずインストールする)