在Ubuntu上,sqlite3-ruby gem找不到sqlite3.h文件

10

我正在尝试在Ubuntu上安装Rails,但是我在安装sqlite3-ruby时遇到了问题——它似乎找不到sqlite3.h。我能找到的所有参考资料都表明,问题要么是sqlite3头文件未安装,要么是make无法找到它们。我认为我已经解决了这两个问题,但仍然看到同样的问题。

我真不知道这里发生了什么。也许是版本不匹配?这是使用ruby 1.8.7、sqlite 3.6.22-1、gem 1.3.5和sqlite3-ruby 1.3.1在Ubuntu 10.04.1上的情况。

david@li88-188:~$ sudo apt-get install sqlite3

[...安装成功...]

Setting up sqlite3 (3.6.22-1) ...
david@li88-188:~$ sudo apt-get install libsqlite3-dev

[...安装成功...]

Setting up libsqlite3-dev (3.6.22-1) ...
david@li88-188:~$ sudo gem install sqlite3-ruby
Building native extensions.  This could take a while...
ERROR:  Error installing sqlite3-ruby:
 ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal' or 'yum install sqlite3-devel'
*** 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.

[...配置选项等等...]

david@li88-188:~$ cat /var/lib/gems/1.8/gems/sqlite3-ruby-1.3.1/ext/sqlite3/mkmf.log 
find_header: checking for sqlite3.h... -------------------- no

"gcc -E -I. -I/usr/lib/ruby/1.8/i486-linux -I. -I/usr/local/include -I/opt/local/include -I/usr/include  -D_FILE_OFFSET_BITS=64  -fno-strict-aliasing -g -g -O2  -fPIC   -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline  conftest.c -o conftest.i"
checked program was:
/* begin */
1: #include <sqlite3.h>
/* end */

--------------------
请注意,/usr/include 在参数列表中。
david@li88-188:~$ ls -l /usr/include/sqlite3.h 
-rw-r--r-- 1 root root 268351 2010-02-08 03:59 /usr/include/sqlite3.h

请注意文件已经存在。


注意:sqlite3-ruby 1.2.5也存在同样的问题。 - David Moles
猜测一下,你启用了宇宙仓库吗? - randomguy
3个回答

41

在我的情况下,我必须安装libsqlite3-dev。

sudo apt-get install libsqlite3-dev

4

没关系。当我试图安装另一个提供更好错误信息的 gem 时,我发现 gcc 本身并没有安装。


1

如果你使用sqlite,Ruby on Rails需要执行以下sudo apt-get install libsqlite3-dev命令。 - PedroMorgan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接