はじめに
似たような記事があるので、投稿どうしようかと思っていましたが、自分用に残そうかと。
新しいMacBookに久しぶりにphpenvを入れようとした際にハマってしまったときの解消メモです。
phpenvを入れる
試行錯誤したものの、Homebrew経由では上手くいかなかったので、直接入れました。
$ git clone https://github.com/CHH/phpenv.git
$ phpenv/bin/phpenv-install.sh
.bash_profileに追記する
.bash_profileの末尾に追記し、反映します。
$ export PATH="$HOME/.phpenv/bin:$PATH"
$ eval "$(phpenv init -)"
$ source .bash_profile
php-buildを入れる
$ git clone https://github.com/CHH/php-build.git $HOME/.phpenv/plugins/php-build
インストール可能なバージョンを確認する
pyenv、nodenvと同じなので、これらを普段使っている人は見なくても打てますが、念のため。
$ phpenv install --list
事前にインストールするもの
phpenvでインストールする際に色々足りないと出るので、Homebrew経由で、以下をインストールします。
$ brew install re2c
$ brew install openssl
$ brew install bison
$ brew install libxml2
新しい環境には、以下が足りなかったので後で以下を追加インストールしました。
$ brew install autoconf
$ brew install automake
$ brew install icu4c
$ brew install libjpeg
$ brew install libpng
$ brew install libmcrypt
任意のバージョンをインストールする
(一般的には)以下のコマンドでインストールできます。
※ 下記では、5.6.35を指定しています。
$ phpenv install 5.6.35
足りないものを入れてもエラーが消えず、brew linkで指定するもエラーが消えず、結局、入れる際は以下のコマンドで入れました。
いつも覚えられない。。
$ PHP_BUILD_CONFIGURE_OPTS="--with-openssl=$(brew --prefix openssl) --with-libxml-dir=$(brew --prefix libxml2)" phpenv install 5.6.35
バージョンを指定する
あとはバージョンを指定します。pyenv、nodenvと同じなので、これらを普段使っている人は見なくても打てますが、念のため。
$ phpenv versions
$ phpenv global 5.6.35
$ phpenv rehash
その他
10回以上やってますが、いつも同じopensslのエラーやicuのエラーで(前に何をやったのか忘れて)試行錯誤している気がします。
今日も午前中は、この作業で終わってしまった。