実行環境
phpenvが入らない
phpのバージョンを管理するphpenvを入れようと
brew install phpenv brew install php-build
をしたところ、phpenvが動かなかった*1ために、anyenvを入れることにしました。
anyenvはphpだけではなく、ruby, python, perl, nodeなどenv系をまとめていれることができます。
ほぼ、欲張り?anyenvでモダンな開発環境構築。PHP,NodeJS,Ruby,Perl,Python - Qiitaを参考にして、いれました。
anyenvの導入
まず、
自分のローカルに入っているenv系を削除します。
brew remove phpenv brew remove rbenv
env系が削除できたら、
git clone https://github.com/riywo/anyenv ~/.anyenv
次に、パスを追加します。
今まで入れていたenv系はコメントアウトして、 ~/.zshenv に以下を書き加えました。
if [ -d $HOME/.anyenv ] ; then export PATH="$HOME/.anyenv/bin:$PATH" eval "$(anyenv init -)" # tmux対応 for D in `\ls $HOME/.anyenv/envs` do export PATH="$HOME/.anyenv/envs/$D/shims:$PATH" done fi
その後は、再読み込みです。
source ~/.zshenv
ここでanyenvを使い、インストールします。
$ anyenv install plenv $ anyenv install pyenv $ anyenv install rbenv $ anyenv install phpenv
ただこのままだと、自分の環境では以下の様に、plenvとpyenvが入りませんでした。
phpenv: * system (set by /Users/yuto/.anyenv/envs/phpenv/version) plenv: /Users/yuto/.anyenv/libexec/anyenv-versions: line 12: plenv: command not found pyenv: /Users/yuto/.anyenv/libexec/anyenv-versions: line 12: pyenv: command not found rbenv: * system (set by /Users/yuto/.anyenv/envs/rbenv/version)
そこで、以下のanyenvのプラグインを入れることで解決しました。
$ mkdir -p $(anyenv root)/plugins $ git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update $ anyenv update $ git clone git://github.com/aereal/anyenv-exec.git $(anyenv root)/plugins/anyenv-exe $ git clone https://github.com/znz/anyenv-git.git $(anyenv root)/plugins/anyenv-git $ anyenv git gc $ anyenv versions phpenv: * system (set by /Users/yuto/.anyenv/envs/phpenv/version) plenv: * system (set by /Users/yuto/.anyenv/envs/plenv/version) pyenv: * system (set by /Users/yuto/.anyenv/envs/pyenv/version) rbenv: * system (set by /Users/yuto/.anyenv/envs/rbenv/version)
ここからは、インストールするだけです。
$phpenv install 5.6.9 phpenv versions * system (set by /Users/yuto/.anyenv/envs/phpenv/version) 5.6.9 $ phpenv global 5.6.9 $ phpenv versions system * 5.6.9 (set by /Users/yuto/.anyenv/envs/phpenv/version)
このままだと、
$ php -v PHP 5.5.27 (cli) (built: Jul 23 2015 00:21:59) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
なので、以下操作で反映されました。
多分、どこかでzshenvの再読み込みを忘れていたようです。
$ source .zshenv $ php -v PHP 5.6.9 (cli) (built: Sep 28 2015 23:38:48) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies with Xdebug v2.3.3, Copyright (c) 2002-2015, by Derick Rethans
*1:具体的には、./phpenv以下にbinファイルが作られなかった