はじめに
実際に開発環境を動かしたりする事は無いけれど、
その周辺ツールや、ちょっとした検証で複数のバージョンの複数の言語を使い分けたい事ってあると思います。
このプロダクトはPHP製なのかー
フロントエンドのビルドにNode.js使ってる。
PHPのバージョン*.*.*で、Node.jsのバージョンは*.*.*との事。
npmの依存関係にPythonが必要で、古めの*系しか対応してないみたい。
上記のように複数の言語に依存していてかつ、その条件が異なるプロダクトを複数扱う場合などに、
ささっと動かせたら良いのになぁ。というケースはあると思います。
今回は、そんな時に便利なanyenvを使ってみたいと思います。
anyenvについて
各プログラム言語のバージョン管理ツールに*env
というツールがありますが、
それらを一元管理出来るツールです。
実行環境
- macOS: 10.15.7
- anyenv: 1.1.2
インストールする
$ git clone https://github.com/anyenv/anyenv ~/.anyenv
$ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(anyenv init -)"' >> ~/.bash_profile
$ ~/.anyenv/bin/anyenv install --init # Do you want to checkout ? [y/N]: y
$ mkdir -p $(anyenv root)/plugins
$ git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update
$ exec $SHELL -l
ホームディレクトリにanyenvとpluginをインストール
シェルを再読み込み
各envをインストールする
$ anyenv install -l
$ anyenv install goenv && \
anyenv install jenv && \
anyenv install nodenv && \
anyenv install phpenv && \
anyenv install pyenv && \
anyenv install rbenv
各envをインストール
各envでバージョンを管理する
$ goenv install -l
$ goenv install 1.15.2
$ goenv local 1.15.2
$ goenv rehash
$ go version
各envの使用方法と同じ手順で、各プログラム言語をインストール
さいごに
Webアプリケーション向けのモダンなフレームワークだと、依存言語が複数の場合があるので便利です。
※phpenvは、ビルドオプションの指定が必要なのでご注意を...。