雪豹系统,sqlite3-ruby

4

所以我按照这个帖子中的每个建议都尝试了,但没有成功。 我正在运行os x 10.6,rails 2.3.3,ruby 1.9.1,但仍然在尝试访问我的rails应用程序的主页时出现以下错误:

未初始化常量SQLite3 :: Driver :: Native :: Driver :: API

我已经尝试了所有可能的snow leopard,rails,sqlite3组合,但没有任何运气。 希望有人能帮忙。 谢谢!


1
为什么要被投票关闭? - ennuikiller
5个回答

8

我最终通过重新编译链接了合适sqlite3库文件的ruby 1.9.1版本解决了这个问题。因此在我的情况下,我需要创建这个链接:

sudo ln -s  /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libsqlite3.0.dylib /usr/local/lib/libsqlite3.dylib

2

或者,简单地说

sudo gem install sqlite3-ruby

不幸的是,那对我没用,因为我仍在使用 Ruby 1.9.1 32 位版本。 - ennuikiller
这对我也没用。不过我仍然在使用 Ruby 1.8.7。我不得不重新安装 XCode,然后重新编译它。 - Kevin

1

ennuikillers的回答对我有用。 我要补充一下,我是在Mac上(运行雪豹)执行此操作的,/usr/local/lib/libsqlite3.dylib已经存在并且已经链接到错误的位置。

我必须添加以下行: sudo rm /usr/local/lib/libsqlite3.dylib

在符号链接行之前。


1

很奇怪,但是我卸载了所有的Sqlite3版本,重新安装了Sqlite3,然后它就工作了。


0

我在一台旧的Ubuntu服务器(6.06)上遇到了类似的问题,我在其中安装了来自源代码的SQLite。由于没有ld.so.conf文件,所以我不得不创建它并将/usr/local/lib添加到其中。


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