gpt4 book ai didi

ruby-on-rails - "rvm requirements"给出的依赖项有什么用?

转载 作者:数据小太阳 更新时间:2023-10-29 08:28:08 27 4
gpt4 key购买 nike

为什么 RVM、Ruby 或 Rails 需要 libc6-dev、ncurses-dev 和 libtool

在 Ubuntu 上运行 rvm requirements 给我们:

Requirements for Linux ( DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.10
DISTRIB_CODENAME=maverick
DISTRIB_DESCRIPTION="Ubuntu 10.10" )

NOTE: 'ruby' represents Matz's Ruby Interpreter (MRI) (1.8.X, 1.9.X)
This is the original / standard Ruby Language Interpreter
'ree' represents Ruby Enterprise Edition
'rbx' represents Rubinius

bash >= 4.1 required
curl is required
git is required (>= 1.7 for ruby-head)
patch is required (for 1.8 rubies and some ruby-head's).

To install rbx and/or Ruby 1.9 head (MRI) (eg. 1.9.2-head), then you
must install and use rvm 1.8.7 first.

Additional Dependencies:
# For Ruby / Ruby HEAD (MRI, Rubinius, & REE), install the following:
ruby: /usr/bin/apt-get install build-essential openssl libreadline6
libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion pkg-config

# For JRuby, install the following:
jruby: /usr/bin/apt-get install curl g++ openjdk-6-jre-headless
jruby-head: /usr/bin/apt-get install ant openjdk-6-jdk

# For IronRuby, install the following:
ironruby: /usr/bin/apt-get install curl mono-2.0-devel

为什么 RVM、Ruby 或 Rails 需要 libc6-dev、ncurses-dev 和 libtool

对于其他包,据我所知:

build-essential automake bison autoconf pkg-config 对于从源代码编译很有用
libreadline6 libreadline6-dev 是 irb 的 readline 支持所必需的
openssl libssl-dev 是 ruby​​ 的 SSL 支持所必需的
curl git-core subversion 是获取软件所必需的
zlib1g zlib1g-dev 是解压 ruby​​gems 所必需的
libyaml-dev 是 ruby​​ 的 YAML 支持所必需的
libsqlite3-dev sqlite3 是 sqlite 对 rails 的支持所必需的
libxml2-dev libxslt-dev 是通过 nokogiri 解析 XML 所必需的

想知道为什么 RVM 首先添加它们吗?
如果未安装这些软件包中的任何一个,哪些知名库会崩溃?
这些包中哪些是安装 ruby​​ 本身所必需的,哪些是 stdlib ie 所必需的。 yaml 还是 rexml?

编辑:忘记 pkg-config
编辑:在最后添加了更多问题

最佳答案

ruby 带有一组扩展,其中一些需要额外的包,例如 ncurses 需要更好的控制台支持 (irb) - 但不是必需的,包搜索需要 pkg-config - 大多数包公开配置有助于找到正确的编译路径的文件...等等,这里是所有扩展名的列表:https://github.com/ruby/ruby/tree/trunk/ext ...虽然它不是需求列表 - 我找不到官方的 ruby​​ 需求列表。

关于ruby-on-rails - "rvm requirements"给出的依赖项有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13641163/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com