如何在特定文件夹中的linux上安装ruby

时间:2015-03-19 12:51:51

标签: ruby linux ubuntu install

我尝试安装ruby和rails来开始学习ruby on rails。

我在Windows上工作。经过多次搜索和尝试,我放弃并在VirtualBox中安装了一个新的ubuntu 14 x64。

我用apt-get安装了ruby,但是它的文件遍布整个文件系统(/ bin,/ var ...)。因此,在安装宝石时,我必须始终使用sudo并搜索所有地方。

我想,就像在windows中一样,找到一个ruby tar.gz,我可以在我的文件夹中解压缩,所有文件都在同一个地方,我有"控制"在文件上,我可以轻松地看到它在安装宝石,导轨等时所做的事情......

问题:我找不到任何用于linux的ruby的tar.gz(或类似存档),我可以在文件夹中解压缩并使用它(我可以管理$ path)。我能找到的唯一一个是Windows!

谢谢!

2 个答案:

答案 0 :(得分:1)

听起来你想要的是Ruby的源代码。转到https://www.ruby-lang.org/en/downloads/并查看“编译Ruby - 源代码”。在那里你可以找到你想要的.tar.gz文件。在实际使用它之前,您需要编译并安装它。正常安装“整个文件系统”复制文件,但您可以通过将--prefix选项传递给./configure脚本来强制安装到特定文件夹。

$ tar -xf ruby-2.2.1.tar.gz
$ cd ruby-2.2.1
$ ./configure --prefix=/my/ruby/dir
$ make && make install

您可能需要安装一些开发包才能使其编译,但任何编译错误都应该清楚地说明您需要的内容。

这些说明也会对here进行说明。

答案 1 :(得分:0)

感谢Max的回复。

如果有人试图在一个全新的ubuntu上编译ruby,这就是我必须要做的就是成功构建和使用它:

安装缺少的依赖项:

get the latest "Stable Snapshot" from https://ftp.ruby-lang.org/pub/ruby/stable-snapshot.tar.gz and not the "Current stable"
sudo apt-get install libffi-dev
sudo apt-get install zlibc zlib1g zlib1g-dev
sudo apt-get install openssl
sudo apt-get install libssl0.9.8 [[[   first, find the latest version with : apt-cache search libssl | grep SSL  ]]]
sudo apt-get install ca-certificates
sudo apt-get install libssl-dev
sudo apt-get install libreadline-dev

然后:

  1. 编辑下载的文件工具/ rbinstall.rb,转到第714行并更正拼写错误: 将“rescue LoadErroe”改为“救援LoadError”(未在2015年3月20日更正)。
  2. 运行Max的上述说明
  3. 不要移动使用“--prefix”声明的ruby目标文件夹(即使您尝试更正ruby / bin中的shell)
  4. 最后,使用rails:

    sudo apt-get install libsqlite3-dev
    sudo apt-get install nodejs     ==> inorder to have a js runtime