在Linux上编译Ruby 1.9.2所需的先决条件?

Ke *_*Sun 5 ruby ubuntu

我是Ruby和RoR的新手.我有一个带有Ubuntu映像的干净的Linode实例,我想从源代码编译Ruby而不是使用apt-get.我已经google了解这样做的指示,但经过一些尝试后,当我尝试运行一些教程样本时,我继续收到有关缺少zlib和其他一些包的错误.

任何人都可以给我详细的说明(或链接),教我如何在从源代码编译Ruby之前安装必要的必备软件包?

我的目的是编译Ruby的最新稳定版本,然后安装Rubygems和Rails.在此先感谢您的帮助!!!

wup*_*tah 19

这篇博客文章介绍了从源代码编译ruby所需的软件包和安装过程; 它引用了Ruby 1.9.1,但它也适用于Ruby 1.9.2.这篇文章真正有用的一点是:

sudo apt-get -y install libc6-dev libssl-dev libmysql++-dev libsqlite3-dev make build-essential libssl-dev libreadline6-dev zlib1g-dev libyaml-dev
Run Code Online (Sandbox Code Playgroud)

对我来说,除非你想继续使用MySQL或SQLite,否则其中一些并不重要,但除此之外,这个包列表将获得编译Ruby所需的内容.

在那之后,我不建议实际从源手动安装Ruby; 我会使用RVM(Ruby版本管理器),因此您可以安装任何版本的Ruby,无论是现在还是以后.RVM通过下载和编译源代码来编译不同版本的Ruby,并且还将为您安装Rubygems.

安装完成后rvm,您可以使用rvm requirements获取所需软件包的当前列表.


EmF*_*mFi 8

您可以使用apt-get install安装任何软件包的所有构建依赖项.启用源存储库,然后运行.

sudo apt-get build-dep ruby1.9 rails
Run Code Online (Sandbox Code Playgroud)

这将安装您需要编译这两个包的源的所有软件包.然后,您可以获取最新的来源,并按照说明进行操作.

注:包的名称可能是错的,取决于它的Ubuntu版本您正在使用.

  • 我只建议将软件包作为安装所有构建依赖项的快捷方式. (4认同)
  • 从包安装Ruby是可以的,但我不建议从包中安装Rails.对于系统ruby,我建议手动安装Rubygems(rubygems.org上的说明 - http://rubygems.org/pages/download),然后是`gem install rails`. (2认同)

the*_*Man 2

强烈建议使用“RVM”来安装所有红宝石,特别是如果您只是为了自己使用而这样做。RVM 将为您完成所有编译,将所有内容放入其中,~/.rvm包括 gems,并可以轻松安装多个版本的 Ruby 和 gems 进行测试。

安装使用 gems会让你运行起来。RVM 的Gemset非常强大,并且 RVM 的ruby命令可以很好地在 RVM 管理的所有已安装的 Rubies 上执行某些操作。

RVM 还支持系统范围的安装,如果您需要,可以提供 RVM 的灵活性,但它有点复杂,如果您使用单用户计算机,则没有必要。