ruby - 当 sqlite3 不在/usr/local 时,如何在 linux 上安装 sqlite-ruby?

标签 ruby linux sqlite installation

我正在尝试在没有 root 权限的 linux 机器上安装 sqlite3 和 sqlite-ruby (ruby 1.8.6)。

我下载了 sqlite3 源代码、二进制文件和共享库,并将它们全部放在一个名为 sqlite3 的目录中

然后我尝试使用安装 sqlite-ruby

gem install sqlite-ruby --with-sqlite-dir=the_path_sqlite/sqlite3

但我一直收到错误...

checking for main() in -lsqlite... no
checking for sqlite.h... no
*** 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.

Provided configuration options:
 --with-opt-dir
 --without-opt-dir
 --with-opt-include
 --without-opt-include=${opt-dir}/include
 --with-opt-lib
 --without-opt-lib=${opt-dir}/lib
 --with-make-prog
 --without-make-prog
 --srcdir=.
 --curdir
 --ruby=/data/scratch/bettbra/common/packages/ruby-1.8.6/bin/ruby
 --with-sqlite-dir
 --with-sqlite-include
 --without-sqlite-include=${sqlite-dir}/include
 --with-sqlite-lib
 --without-sqlite-lib=${sqlite-dir}/lib
 --with-sqlitelib
 --without-sqlitelib

最佳答案

您使用以下语法指定开发文件( header 和库)的位置:

gem install sqlite3 -- --with-sqlite3-include=$HOME/include --with-sqlite3-lib=$HOME/lib

注意 -- 标记 gem 选项的结尾。在它们之后,选项被传递到扩展编译过程。

但是,我赞同鲁本的建议;你真的应该考虑使用 RVM。对于这种情况以及顺利迁移到 Ruby 1.9 是一件幸事。

关于ruby - 当 sqlite3 不在/usr/local 时,如何在 linux 上安装 sqlite-ruby?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2481118/

相关文章:

ruby-on-rails - 私有(private)方法中的 HGET 不返回哈希

Rubymine 无法识别已安装的 gem

linux - 在 mailx 正文中包含日志文件内容

Android sqlite 返回 : error code = 14

sqlite - 使用PyQt5.QtSql从联接的SQLite表中显示数据?

ruby - 管理大量 javascript/css (RAILS 3)

ruby - Ruby 中的自定义排序

ruby-on-rails - 确定 ruby​​ 循环中的 json 键/值何时需要逗号?

linux - 计算进程消耗的最大可用存储内存

android - 如何在不使用 double 的情况下使用 BigDecimals