Trying to get Rails up on ubuntu, and I’m having trouble installing sqlite3-ruby – it apparently can’t find sqlite3.h
. All the references I can find to the error suggest the problem is either: sqlite3 headers aren’t installed, or make can’t find them. It looks to me like I’ve solved both those issues and I’m still seeing the same problem.
试图在ubuntu上获取Rails,我在安装sqlite3-ruby时遇到问题 - 显然找不到sqlite3.h。我可以找到错误的所有引用都表明问题是:未安装sqlite3头文件,或者make无法找到它们。在我看来,我已经解决了这两个问题,我仍然看到同样的问题。
No real idea what’s going on here. Version mismatch, maybe? This is with ruby 1.8.7, sqlite 3.6.22-1, gem 1.3.5 and sqlite3-ruby 1.3.1 on ubuntu 10.04.1.
不知道这里发生了什么。版本不匹配,也许?这是在ubuntu 10.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
[...successful installation...]
[...成功安装...]
Setting up sqlite3 (3.6.22-1) ...
david@li88-188:~$ sudo apt-get install libsqlite3-dev
[...successful installation...]
[...成功安装...]
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.
[...configuration options etc....]
[...配置选项等....]
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 */
--------------------
Note that /usr/include
is in the list of arguments.
请注意,/ 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
And note that the file is there.
请注意该文件在那里。
3 个解决方案
#1
41
In my case I had to install libsqlite3-dev
在我的情况下,我不得不安装libsqlite3-dev
sudo apt-get install libsqlite3-dev
#2
4
Never mind. gcc itself wasn't installed, as I discovered when I tried to install another gem with better error messages.
没关系。 gcc本身没有安装,正如我在尝试安装另一个带有更好错误消息的gem时发现的那样。
#3
1
https://help.ubuntu.com/community/RubyOnRails here is a basic tutorial for setting up RoR development environment for Ubuntu with each step of the way explained. Good luck!
https://help.ubuntu.com/community/RubyOnRails这里是一个基本教程,用于为Ubuntu设置RoR开发环境,并说明每一步。祝你好运!
#1
41
In my case I had to install libsqlite3-dev
在我的情况下,我不得不安装libsqlite3-dev
sudo apt-get install libsqlite3-dev
#2
4
Never mind. gcc itself wasn't installed, as I discovered when I tried to install another gem with better error messages.
没关系。 gcc本身没有安装,正如我在尝试安装另一个带有更好错误消息的gem时发现的那样。
#3
1
https://help.ubuntu.com/community/RubyOnRails here is a basic tutorial for setting up RoR development environment for Ubuntu with each step of the way explained. Good luck!
https://help.ubuntu.com/community/RubyOnRails这里是一个基本教程,用于为Ubuntu设置RoR开发环境,并说明每一步。祝你好运!