anyenvとは、プログラミング言語のバージョンなどを管理して、開発環境を整理するためのツール。
というような使い方をする。
su user1
anyenvはサーバー全体に対してではなく、ユーザー単位の環境に対してインストールする。
このユーザーはpython2.xを使う、このユーザーはpython3.xを使うみたいなことができる。
また、同じユーザーで、このディレクトリではpython2.x、このディレクトリではpython3.xみたいにプロジェクト別でバージョンを変えたりもできる。
anyenv -v
bash: anyenv: コマンドが見つかりません
のように表示される場合は、anyenvがまだインストールされていない。
git clone https://github.com/anyenv/anyenv ~/.anyenv
GitHubからanyenvをダウンロードする。
.anyenv
というディレクトリができる。
echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(anyenv init -)"' >> ~/.bash_profile
.bash_profile
というファイルの末尾に
export PATH=“$HOME/.anyenv/bin:$PATH”
eval “$(anyenv init -)”
という2行を追加。
環境変数PATH
の先頭に $HOME/.anyenv/bin
を追加している。
.bash_profile
が読み込まれるときに(ログイン時に)
anyenv init
を実行させる。
anyenv init
はシェルにanyenvの設定を読み込ませるためのコマンド。
ログインしたりユーザーを切り替える度にanyenv init
の実行が必要だが、
.bash_profile
に設定することで自動化できる。
~/.anyenv/bin/anyenv init
exec $SHELL -l
.bash_profile
への設定を反映させるために、シェルを再起動。
ANYENV_DEFINITION_ROOT(/home/user1/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by: > anyenv install --init
anyenv install –init
を実行するようにと警告が出る。
anyenv install --init
anyenvをインストール。
Manifest directory doesn't exist: /home/user1/.config/anyenv/anyenv-install Do you want to checkout https://github.com/anyenv/anyenv-install.git? [y/N]: y Cloning https://github.com/anyenv/anyenv-install.git master to /home/user1/.config/anyenv/anyenv-install... Cloning into '/home/user1/.config/anyenv/anyenv-install'... remote: Enumerating objects: 62, done. remote: Counting objects: 100% (5/5), done. remote: Compressing objects: 100% (5/5), done. remote: Total 62 (delta 1), reused 1 (delta 0), pack-reused 57 Unpacking objects: 100% (62/62), done. Completed!
Do you want to checkout https://github.com/anyenv/anyenv-install.git? [y/N]
というプロンプトがでるので、y
を入力する。