使用RVM,如何确保gems和非gems看到相同版本的ruby?
我正试图在Ubuntu上安装bdb作为一个gem,如下所示使用RVM,如何确保gems和非gems看到相同版本的ruby?,ruby,rubygems,rvm,berkeley-db,Ruby,Rubygems,Rvm,Berkeley Db,我正试图在Ubuntu上安装bdb作为一个gem,如下所示 gem install bdb 我没有使用sudo,因为我是用rvm安装的。我的系统上的ruby版本是1.9.1,但这次安装使用的版本是1.8.7(你看,我正在安装rbot)。我遇到的问题是: checking for db_version() in -ldb-4.something... no 我想这意味着rubygems没有在它正在寻找的地方找到ldb4。这是因为我使用sudo安装了libdb-4.something(实际上是7
gem install bdb
我没有使用sudo,因为我是用rvm安装的。我的系统上的ruby版本是1.9.1,但这次安装使用的版本是1.8.7(你看,我正在安装rbot)。我遇到的问题是:
checking for db_version() in -ldb-4.something... no
我想这意味着rubygems没有在它正在寻找的地方找到ldb4。这是因为我使用sudo安装了libdb-4.something(实际上是7),并且我的系统的ruby版本与我用于bdb的ruby版本不同吗?使用rvm,我应该如何管理这种情况?也许我做错了,但在我看来,我的问题是我使用的不是所有东西都是宝石,而不是宝石的东西看到的是错误版本的ruby
(如果事实证明我的问题与此完全无关:我仍然对这个问题感兴趣。我在我的系统上安装的特定版本的ruby如何与在不同版本的ruby下使用rvm安装的gems相处?“我用特定版本的ruby在系统上安装的东西如何与使用RVM在不同版本的ruby下安装的gems相处?”
RVM用于管理不同版本的Ruby,使它们彼此隔离
这意味着您在系统中使用的Ruby版本(当您执行将要安装到系统中的sudogem安装时)与当前环境(正确设置时)无关
在RVM环境中,安装的每个Ruby版本都是一个隔离的环境
我的建议是:
去网站看看吧
在本页末尾,继续阅读有关如何使用Gemset的内容
转到项目目录
rvm使用1.8。7@your_project_environment
创建.rvrmc文件,以便在以后访问此项目时自动在项目中使用此环境,此文件可以包含“rvm use 1.8”。7@your_project_environment“这将实现这一目标
安装所有必需的gems
如果您还有其他问题,请随时访问Wayne E.Seguin和RVM的许多其他用户,我们将很乐意为您提供帮助。当然,首先搜索答案的是网站上的文档。我认为这在我的问题中不够明确,但是:这里的关键是,所讨论的依赖性不是宝石。它是w与apt get一起安装。因此,也许我的问题真的与包管理器如何交互有关?感谢您的帮助,该文档非常有趣!@Ziggy在安装了一些包(如openssl/zlib)后,您很可能需要重新安装ruby,但对于某些包,它的工作方式与ruby不同,该包可以在仅通过apt get安装ruby