[rbenv](https://github.com/rbenv/rbenv)は複数のバージョンのrubyをインストールして切り替えて使えるようにするツールです。
rubyとenvironmentの略でrbenvだと思います。
rubyのインストール(コンパイル+インストール)に使うruby-buildと組み合わせて使います。(ruby-buildをrbenvのプラグインとしてインストールして使います)
**注意**
どのソフトもそうですが、インストール方法・コマンドは常に変わる可能性があるので、ここやブログの記事はあくまで参考にするだけで、本家の最新のドキュメントのやり方を参照しましょう。
本家以外のドキュメントは古くなっている可能性があるので、よくわからずコピペしないこと。
## rbenvのインストール
rbenvの場合はGitHubにあるREADMEにしっかりしたインストール方法が書いてあるのでそちらを参照してください。
[rbenvのREADME](https://github.com/rbenv/rbenv#readme)
### ポイント
Debianのパッケージが用意されてますが、buster用のは古いのと、ruby-buildは常に新しいのを使う必要があるので、両方ともソースコードから入れる方法を使うのが良いです。
[Basic GitHub Checkout](https://github.com/rbenv/rbenv#basic-github-checkout)
Busterのデフォルトではgitコマンドが入ってないのでインストールしておきましょう。
```sh
$ sudo apt install git -y
```
インストール手順に出てくるrbenv-doctorを入れるときのコマンド`curl`はデフォルトでは入ってないのでインストールしておきましょう。
```
$ sudo apt install curl -y
```
## ruby-buildのインストール
こちらも本家READMEをしっかり読みましょう。
Debianの場合は`As an rbenv plugin`と書いてあるやり方でインストールしましょう。
[ruby-buildのREADME](https://github.com/rbenv/ruby-build#readme)
### ポイント
rbenvを使って実際にrubyをインストールする時はrubyをコンパイルする必要があります。(rbenvがやってくれます)
しかし、コンパイルに必要なツール群(`build-essential`パッケージ)がデフォルトでは入ってないので入れておきましょう。
```sh
$ sudo apt install build-essential -y
```
それ以外にもrubyのコンパイルに固有のライブラリが必要なのでインストールしましょう。(下記はrubyのコンパイル時に足りないものとして表示されます。)
```sh
$ sudo apt install -y libssl-dev libreadline-dev zlib1g-dev
```
ブログ