Sqlite3-ruby的安装问题

我试图安装sqlite3-ruby的gem(或现在叫,只是sqlite3),每当我跑

gem安装sqlite3

它吐出来了

构build本机扩展。 这个
可能需要一段时间…错误:错误
安装sqlite3:错误:失败
build立gem本地扩展。

/usr/bin/ruby1.8 extconf.rb检查
为sqlite3.h …是检查
sqlite3_libversion_number()中
-lsqlite3 …是检查rb_proc_arity()…没有检查
sqlite3_initialize()…是检查
对于sqlite3_next_stmt()…是的
检查sqlite3_backup_init()…
是检查
sqlite3_column_database_name()…不
检查
sqlite3_enable_load_extension()…是的
检查
sqlite3_load_extension()…是的
创buildMakefile

使cc -I。 -一世。
-I / usr / lib / ruby​​ / 1.8 / x86_64-linux -I。 -DHAVE_SQLITE3_INITIALIZE -DHAVE_SQLITE3_NEXT_STMT -DHAVE_SQLITE3_BACKUP_INIT -DHAVE_SQLITE3_ENABLE_LOAD_EXTENSION -DHAVE_SQLITE3_LOAD_EXTENSION -I / usr / local / include -I / opt / local / include -I / sw / local / include -I / usr / include -fPIC -fno-strict-aliasing -g -g -O2 -fPIC -c statement.c从./sqlite3_ruby.h:42包含的文件中,从statement.c:1:./backup.h:7:error:expected specifier-qualifier-list before
'sqlite3_backup'make:***
[statement.o]错误1

Gem文件将保持安装在
/usr/lib/ruby/gems/1.8/gems/sqlite3-1.3.3
进行检查。 结果logging到
/usr/lib/ruby/gems/1.8/gems/sqlite3-1.3.3/ext/sqlite3/gem_make.out

这是我的系统规格:
Debian Lenny服务器
Ruby 1.8.7
Rails 3.0.0
乘客3.0.7
sqlite3 3.7.6.2
rubygems 1.3.7

非常感谢

我需要在编译期间启用SQLITE_ENABLE_COLUMN_METADATA。 在这里find一个不错的教程

  1. 下载并解压sqlite源代码。
  2. 打开sqlite.c文件并find这些行

     #ifndef SQLITE_API # define SQLITE_API #endif 

    在它下面添加这一行

     #define SQLITE_ENABLE_COLUMN_METADATA 
  3. 编译并安装

     ./configure make make check sudo make install #You need to run 'make install' as root or with sudo... sudo make clean 

我期望你将需要安装ruby-dev(el)和sqlite3-dev(el)中的一个或两个。 它是关于类Debian的系统和关于类似Red Hat的系统的一个简化。