∞概要
rvm autolibs <flag>
或 rvm install --autolibs=<flag>
或 rvm get [type] --autolibs=<flag>
∞描述
Autolibs 是 RVM 中内置的一项功能,允许您自动在系统上安装依赖项。这些依赖项通常是 OpenSSL、YAML 等。您也可以完全禁用 autolibs,或者在“全权处理”和“完全不处理”之间进行操作。
∞--autolibs
和 autolibs
之间的区别
有些人可能会对 --autolibs
和 autolibs
之间的区别感到困惑,甚至对在安装 ruby(rvm install [ruby] --autolibs
)和安装 rvm
(rvm get [type] --autolibs
)时 --autolibs
之间的区别感到困惑,但不用担心,这很容易记住。
rvm get [type] --autolibs=<flag>
等同于rvm autolibs <flag>
。rvm autolibs <flag>
是永久性的。rvm install [ruby] --autolibs=<flag>
会临时覆盖rvm autolibs <flag>
。
∞模式
0
,disable
,disabled
- 不执行任何操作。1
,read
,read-only
- 使用可用的库,忽略缺失的库。2
,fail
,read-fail
- 使用库,如果缺少某些库则失败。3
,packages
,install-packages
, - 使用库,安装缺失的库。4
,enable
,enabled
- 安装缺失的包管理器(仅限 OSX,在 Linux 上类似于 3)。
∞其他选项
reset
- 将 RVM 重置为默认模式。status
- 显示有关您模式的详细信息。show
- 显示您当前的模式。help
- 显示基本模式描述。
∞模式说明
默认模式为 enabled
,以下是模式的解释,其中最有用的是 read-fail
,以防用户没有 sudo
权限。
∞让 RVM 全权处理 (4)
RVM 可以为用户处理所有事情,这意味着它将检测现有的包管理器,如果不存在则安装一个。通常,对于没有安装自己的包管理器并且不知道如何编译自己软件的新用户来说,这将是最佳选择。
启用 4
rvm autolibs enable
大多数系统都附带一个包管理器,因此 enable
模式与 packages
相同。不幸的是,在 OSX 上没有提供包管理器,因此 RVM 必须检测到用户现有努力中的一个,检测顺序为:macports
、homebrew
、smf
、fink
,如果它们都不存在,则 RVM 将安装 macports
。
您也可以选择使用以下选项之一来强制使用包管理器,而不是使用 enable
macports
、homebrew
、fink
、smf
(SM 框架) 或 rvm_pkg
(旧的 rvm pkg
),例如
rvm autolibs homebrew
或者使用包含 homebrew、ruby 和 rails 的安装程序
\curl -sSL https://get.rvm.io | bash -s stable --autolibs=homebrew --rails
∞让 RVM 处理包 (3)
RVM 也可以设置为仅检查包管理器并安装您可能需要的或可能需要更新的任何包。对于不想处理管理自己依赖项任务的用户来说,这是推荐的选择。此选项适用于 Linux 和 OS X 用户。
启用 3
rvm autolibs packages
仅使用 3 一次
rvm install --autolibs=packages <ruby>
∞告诉 RVM 在缺少某些东西时失败 (2)
rvm autolibs read-fail
∞告诉 RVM 尝试使用现有依赖项,但如果缺少某些东西则不要失败 (1)
rvm autolibs read-only
∞避免任何额外的操作或配置 (0)
rvm autolibs disable
∞示例
使用 Ruby 和 Ruby on Rails 以及所有必需的库安装 RVM
\curl -sSL https://get.rvm.io | bash -s stable --rails