尝试在Ubuntu上安装Rails,但我在安装sqlite3-ruby时遇到了麻烦-显然找不到sqlite3.h。我可以找到的所有对该错误的引用都表明问题是:未安装sqlite3 header ,还是make找不到它们。在我看来,我已经解决了这两个问题,但仍然遇到同样的问题。

不知道这是怎么回事。版本不匹配,也许吗?这是Ubuntu 1.0.04.1上的ruby 1.8.7,sqlite 3.6.22-1,gem 1.3.5和sqlite3-ruby 1.3.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

并注意该文件在那里。

最佳答案

就我而言,我必须安装libsqlite3-dev

sudo apt-get install libsqlite3-dev

10-07 19:48
查看更多