本文章主要讲用 rbenv 来安装 Ruby
rbenv 是什么
rbenv 用来管理多个版本的 Ruby 在用户目录的安装和
使用,类似于使用 ** nvm ** 来安装 Node.Js
和使用 apt-get install ruby
有什么区别
- apt-get 只能安装一个版本,而且不一定是最新版。
- 使用 rbenv 可以安装多个版本,并且可以同时存在于你的电脑上。
具体区别可以参考文章用 apt-get 安装 node 和用 nvm 安装
node 的区别
安装步骤
首先安装 rbenv
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
- 如果你用的是 bash 那么需要把
~/.zshrc
换成~/.bash_profile
接下来继续执行
~/.rbenv/bin/rbenv init
type rbenv
source ~/.zshrc
rbenv version
然后我们需要安装ruby-bulid
git clone https://github.com/rbenv/ruby-build.git
~/.rbenv/plugins/ruby-build
然后安装Ruby
rbenv install --list
如果没有 ruby-build,就不能用 install 这个命令,这一个命令会显示所有可安装的 ruby 版本
rbenv install 2.3.2
在安装这一步的时候,可能会报这样一个错误。
Downloading ruby-2.3.2.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.2.tar.bz2
Installing ruby-2.3.2...
BUILD FAILED (Ubuntu 16.04 using ruby-build 20161121-14-gd799bdd)
Inspect or clean up the working tree at /tmp/ruby-build.20161215165955.8822
Results logged to /tmp/ruby-build.20161215165955.8822.log
Last 10 log lines:
installing capi-docs: /home/guoru/.rbenv/versions/2.3.2/share/doc/ruby
The Ruby openssl extension was not compiled.
The Ruby readline extension was not compiled.
ERROR: Ruby install aborted due to missing extensions
Try running `apt-get install -y libssl-dev libreadline-dev` to fetch missing dependencies.
Configure options used:
--prefix=/home/guoru/.rbenv/versions/2.3.2
LDFLAGS=-L/home/guoru/.rbenv/versions/2.3.2/lib
所以,这个时候,我们需要执行
sudo apt-get install -y libssl-dev libreadline-dev
然后在执行
rbenv install 2.3.2
ruby -v
这样,我们就可以安装 Ruby 了
在这里,我还是推荐大家用 rbenv 安装 Ruby 的,因为 对于开发人员来说,可能经常需要在多个版本之间切换,使用 rbenv 可以使这件事变的很灵活。