如何从/ usr / local卸载Ruby?

时间:2010-04-07 10:09:57

标签: ruby install uninstall

一切都运转正常,直到我们决定将红宝石从1.8.6升级到1.8.7,那就是全部崩溃了。当我们从源代码编译Ruby 1.8.7时,它已安装到/ usr / local / bin中,而Ruby 1.8.6则保留在/ usr / bin中。 目前,我们已经卸载了ruby 1.8.6,并且我们从/ usr / local删除了ruby 1.8.7文件。

当我们尝试“哪个红宝石”它指向/ usr / local。 如果有人可以帮助我们我们需要做的事情重新回到正轨,我们将非常感激。并且还知道我们如何从/ usr / local卸载ruby。 我们尝试了yum删除红宝石,从/usr/bin.Thanks和干杯中删除红宝石!

6 个答案:

答案 0 :(得分:21)

编辑:正如评论中所建议的那样。此解决方案适用于Linux OS。如果您已经从package-manager手动安装了ruby,那也是如此。

如果您想拥有多个ruby版本,最好拥有RVM。在这种情况下,您不需要删除ruby旧版本。

如果想删除,请按照以下步骤操作:

首先你应该找到Ruby的位置:

whereis ruby

将列出系统中存在的所有位置,然后您可以显式删除所有这些位置。或者你可以使用这样的东西:

rm -rf /usr/local/lib/ruby
rm -rf /usr/lib/ruby
rm -f /usr/local/bin/ruby
rm -f /usr/bin/ruby
rm -f /usr/local/bin/irb
rm -f /usr/bin/irb
rm -f /usr/local/bin/gem
rm -f /usr/bin/gem

答案 1 :(得分:12)

如果它在/usr/bin中,则卸载1.8.6不是一个好主意。这是操作系统所有,预计会在那里。

如果您在/usr/local/bin之前将/usr/bin放入PATH,那么您在/usr/local/bin中安装的内容将在/usr/bin中具有相同名称之前找到,有效覆盖或更新它们,而不是真正这样做。您仍然可以在#中明确使用/usr/bin来与他们联系!代码顶部的解释器调用行。

@Anurag建议使用RVM,我将其中。除了操作系统的1.8.6之外,我还用它来管理1.8.7和1.9.1。

答案 2 :(得分:2)

在/ usr / bin创建一个名为'ruby'的symlink并将其指向最新安装的ruby。

您可以使用ln -s /usr/bin/ruby /to/the/installed/ruby/binary

之类的内容

希望这有帮助。

答案 3 :(得分:1)

这样做:

sudo apt purge ruby

答案 4 :(得分:1)

如果以下列方式安装了ruby:

./configure --prefix=/usr/local
make
sudo make install

您可以通过以下方式卸载它:

检查已安装的ruby版本;让我们假设2.1.2

wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.bz2
bunzip ...
tar xfv ...
cd ruby-2.1.2
./configure --prefix=/usr/local
make
sudo checkinstall
  # will build deb or rpm package and try to install it

安装完成后,您现在可以删除软件包,它将删除目录/ files / etc.

sudo rpm -e ruby # or dpkg -P ruby (for Debian-like systems)

可能还有一些文物:

Removing ruby ...
  warning: while removing ruby, directory '/usr/local/lib/ruby/gems/2.1.0/gems' not empty so not removed.
  ...

手动删除它们。

答案 5 :(得分:0)

sudo make uninstall使用官方下载页面中的Ruby 2.4 tar为我做了诀窍。