在Ubuntu上安装Ruby 1.9.1?

我想知道在Ubuntu 9.04上安装最新版本的Ruby。 现在我可以通过./configure来运行,并且make很好,但是我想知道:如何避免与包装系统的冲突? 例如,如果我安装的其他软件包取决于Ruby,那么软件包pipe理器是不是会安装(过时的)Ruby软件包,最糟糕的情况是会覆盖我的文件?

所以我想我需要一些方法告诉Ubuntu,Ruby实际上已经安装了?

节省您的头痛,并使用RVM ( Ruby版本pipe理器 )

请记住,Rails 3在Ruby 1.9.2中效果最好。 Ruby 1.9.2修复了1.9.1中的一些bug,比运行1.9.1更好。

使用RVM安装1.9.2是一件轻而易举的事情。

 sudo apt-get install ruby1.9.1-full 

http://www.ruby-lang.org/en/downloads/

运行后

 sudo apt-get install ruby1.9.1-full 

这是解决方法是运行以下命令:

 sudo update-alternatives --config ruby 

然后你会得到这个输出:

  There are 2 choices for the alternative ruby (providing /usr/bin/ruby). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/ruby1.8 50 auto mode 1 /usr/bin/ruby1.8 50 manual mode 2 /usr/bin/ruby1.9.1 10 manual mode Press enter to keep the current choice[*], or type selection number: 2 update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode. $ ruby --version ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux] 

这个解决scheme的信贷去https://askubuntu.com/questions/91693/how-do-you-uninstall-ruby-1-8-7-and-install-ruby-1-9-2的人; 。 目前ruby1.9.1包实际上是ruby 1.9.2。

我做的方式是使用checkinstall来构build它,它可以让你构build一个deb包。 所以我下载了Ruby 1.9.1源代码,做了一个“configure”,然后“make”,做了一个“checkinstall”,并把包名称设置为ruby1.9,这样它就像是一个新版本的ruby 1.9一样安装应该)。

我从这个网站得到了Ruby的具体信息。 您可以使用–prefix = / path开关将大多数软件安装在不同的目录中。 而且,通常在你的电脑上安装/ opt / for everyone,如果只有你自己安装在$ HOME上。

要安装在/ opt:

 $ ./configure –prefix=/opt/ruby $ make install 

如果你想使用/ opt安装的ruby,编辑你〜/ .bashrc并添加

 export PATH=/opt/ruby/bin/:$PATH 

如果你不想把自定义的Ruby构build成默认的,你可以把它添加到你的〜/ .bashrc而不是以前的命令

 function setupruby { export PATH=/opt/ruby/bin/:$PATH } 

下面是安装1.9.1的简短方法,并将其设置为默认值: http : //michalf.me/blog :make-ruby-1-9-default-on-ubuntu-9-10-karmic-koala

我为ruby 1.9.2创build了一个launchpad ppa。 详情请参阅下面的链接

http://www.humbug.in/2010/launchpad-ppa-for-ruby-1-9-2-and-some-ruby-bindings/

 sudo add-apt-repository ppa:pratikmsinha/ruby192+bindings cd /etc/apt/sources.list.d/; sudo mv pratikmsinha-ruby192+bindings-lucid.list pratikmsinha-ruby192bindings-lucid.list sudo aptitude update sudo aptitude install ruby1.9.2 

纵观突触,看起来你甚至不必处理Multiverse或第三方存储库。 但是由于sudo apt-get install ruby目前安装ruby1.8的别名,你应该明确地安装ruby1.9 – 手动或者通过仓库 – 并且自己创build别名ruby

你可能想把这个二进制文件放在/usr/bin因为这个文件就是在这个地方放的。 虽然PATH上的任何地方都很好。