【问题标题】:How can install sqlite-ruby on linux when sqlite3 is not in /usr/local?当 sqlite3 不在 /usr/local 中时,如何在 linux 上安装 sqlite-ruby?
【发布时间】:2010-03-19 23:15:44
【问题描述】:

我正在尝试在我没有 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

【问题讨论】:

  • 请使用“代码”按钮重新格式化您的答案。同时发布“mkmf.log”的内容。

标签: ruby linux sqlite installation


【解决方案1】:

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

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

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

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

【讨论】:

    【解决方案2】:

    我正在使用 ubuntu(debain 类型的 linux)。我设法通过以下方式解决它:

    sudo apt-get install sqlite3 libsqlite3-dev sudo gem install sqlite3-ruby

    【讨论】:

    • 查尔斯确实说他没有 root 访问权限
    • 我不是专家,但根据我的经验——如果你在 Linux 上没有 root 访问权限,你真的无能为力。得到 sudo 密码。
    • 你当然可以做很多事情——包括在你的主目录下安装东西——无需 root sudo 访问权限。我遇到过很少的软件不支持不同的 PREFIX 或类似的东西。
    【解决方案3】:

    你能安装 RVM(Ruby 版本管理器)吗?

    https://rvm.io/rvm/install/

    使用 RVM,您可以以用户身份安装 gem 等。 没有 sudo/root 权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-02
      • 1970-01-01
      • 1970-01-01
      • 2011-07-12
      • 2013-03-06
      • 2015-05-06
      相关资源
      最近更新 更多