使用Rbenv安装Ruby

使用Rbenv安装Ruby

需要安装的工具

sudo yum install git-core zlib zlib-devel gcc-c++ patch readline readline-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison curl sqlite-deve

直接执行安装即可

curl -sL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash -

如果上面的地址无法访问,则可以使用下面的脚本,将其保存为rbenv-installer后,bash rbenv-installer即可。2020年5月27日15:44:21

#!/bin/bash
set -e

homebrew=
type -p brew >/dev/null && homebrew=1

try_bash_extension() {
  if [ -x src/configure ]; then
    src/configure && make -C src || {
      echo "Optional bash extension failed to build, but things will still work normally."
    }
  fi
}

if ! type -p git >/dev/null; then
  git() {
    echo "Error: git is required to proceed. Please install git and try again." >&2
    exit 1
  }
fi

http() {
  local url="$1"
  if type -p curl >/dev/null; then
    curl -fsSL "$url"
  elif type -p wget >/dev/null; then
    wget -q "$url" -O-
  else
    echo "Error: couldn't download file. No \`curl' or \`wget' found." >&2
    return 1
  fi
}

rbenv="$(command -v rbenv ~/.rbenv/bin/rbenv | head -1)"

if [ -n "$rbenv" ]; then
  echo "rbenv already seems installed in \`$rbenv'."
  cd "${rbenv%/*}"

  if [ -x ./brew ]; then
    echo "Trying to update with Homebrew..."
    brew update >/dev/null
    if [ "$(./rbenv --version)" < "1.0.0" ] && brew list rbenv | grep -q rbenv/HEAD; then
      brew uninstall rbenv
      brew install rbenv --without-ruby-build
    else
      brew upgrade rbenv
    fi
  elif git remote -v 2>/dev/null | grep -q rbenv; then
    echo "Trying to update with git..."
    git pull --tags origin master
    cd ..
    try_bash_extension
  fi
else
  if [ -n "$homebrew" ]; then
    echo "Installing rbenv with Homebrew..."
    brew update
    brew install rbenv --without-ruby-build
    rbenv="$(brew --prefix)/bin/rbenv"
  else
    echo "Installing rbenv with git..."
    mkdir -p ~/.rbenv
    cd ~/.rbenv
    git init
    git remote add -f -t master origin https://github.com/rbenv/rbenv.git
    git checkout -b master origin/master
    try_bash_extension
    rbenv=~/.rbenv/bin/rbenv

    if [ ! -e versions ] && [ -w /opt/rubies ]; then
      ln -s /opt/rubies versions
    fi
  fi
fi

rbenv_root="$("$rbenv" root)"
ruby_build="$(command -v "$rbenv_root"/plugins/*/bin/rbenv-install rbenv-install | head -1)"

echo
if [ -n "$ruby_build" ]; then
  echo "\`rbenv install' command already available in \`$ruby_build'."
  cd "${ruby_build%/*}"

  if [ -x ./brew ]; then
    echo "Trying to update with Homebrew..."
    brew update >/dev/null
    brew upgrade ruby-build
  elif git remote -v 2>/dev/null | grep -q ruby-build; then
    echo "Trying to update with git..."
    git pull origin master
  fi
else
  if [ -n "$homebrew" ]; then
    echo "Installing ruby-build with Homebrew..."
    brew update
    brew install ruby-build
  else
    echo "Installing ruby-build with git..."
    mkdir -p "${rbenv_root}/plugins"
    git clone https://github.com/rbenv/ruby-build.git "${rbenv_root}/plugins/ruby-build"
  fi
fi

# Enable caching of rbenv-install downloads
mkdir -p "${rbenv_root}/cache"

echo
echo "Running doctor script to verify installation..."
http https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | "$BASH"

echo
echo "All done!"
echo "Note that this installer doesn't yet configure your shell startup files:"
i=0
if [ -x ~/.rbenv/bin ]; then
  echo "$((++i)). You'll want to ensure that \`~/.rbenv/bin' is added to PATH."
fi
echo "$((++i)). Run \`rbenv init' to see instructions how to configure rbenv for your shell."
echo "$((++i)). Launch a new terminal window to verify that the configuration is correct."
echo

设置环境变量

# .bashrc

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

安装Ruby版本

rbenv install 2.5.8

使用Ruby版本

rbenv local 2.5.8
posted @ 2020-05-28 13:45  呓语i  阅读(822)  评论(0编辑  收藏  举报