こんにちは。iQeda [@iQeeeda] です。
Macbook Pro 2021 が届いたので PHP 環境を構築しようと anyenv
とphpenv
の初期設定をしたのですが、これが非常に難しかった…!ので備忘録を残しておきます!
M1 Mac確認環境
- Macbook Pro 2021
- Apple M1 Pro チップ
- MacOS Monterey 12.0
- Homebrew 3.3.2
- 最近の Homebrew って
/usr/local/
じゃなくて/opt/homebrew
配下にパッケージインストールされるっぽい
- 最近の Homebrew って
anyenv
anyenv
は phpenv
や nodenv
などの **env 系ツールを一元管理してくれるものです!
anyenv をインストールする
# Mac でのインストール brew install anyenv echo 'eval "$(anyenv init -)"' >> ~/.zshrc exec $SHELL -l # anyenv コマンドを使う anyenv init anyenv install --init # プラグイン追加 mkdir -p $(anyenv root)/plugins git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update git clone https://github.com/znz/anyenv-git.git $(anyenv root)/plugins/anyenv-git # インストール可能なリストを更新する anyenv update
phpenv
phpenv をインストールする
PHP インストールするには、なんとこんなにもパッケージが必要です…
- autoconf
- bison
- bzip2
- curl
- gcc
- icu4c
- krb5
- libedit
- libiconv
- libjpeg
- libpng
- libxml2
- libzip
- oniguruma
- openssl@1.1
- pkg-config
- re2c
- tidy-html5
- zlib
# phpenv と phpbuild がインストールされる anyenv install phpenv # リフレッシュ exec $SHELL -l # 必要なパッケージ xcode-select --install brew install curl autoconf bzip2 icu4c krb5 libedit libiconv libjpeg libpng libxml2 libzip oniguruma openssl@1.1 pkg-config tidy-html5 gcc re2c bison openssl zlib
環境変数を設定する
よく phpenv install
コマンドの前に長ったらしい環境変数を付けている記事が見ますが、あれを毎回指定するのはしんどいのでちゃんと設定ファイルに定義します。
私は zsh を使っているので ~/.zshenv
に以下を定義していますが、人によっては /opt/homebrew/opt/
ではなく /usr/local/opt/
と思うので適宜書き換えてください!
ここはかなり重要でして、設定が漏れているとせっかく brew install してたとしても「Cannot find libtidy」などといったエラーが表示されてしまいます!
PATH
# .zshenv に下記を定義 export PATH="/opt/homebrew/opt/bison/bin:$PATH" export PATH="/opt/homebrew/opt/libxml2/bin:$PATH" export PATH="/opt/homebrew/opt/bzip2/bin:$PATH" export PATH="/opt/homebrew/opt/curl/bin:$PATH" export PATH="/opt/homebrew/opt/libiconv/bin:$PATH" export PATH="/opt/homebrew/opt/krb5/bin:$PATH" export PATH="/opt/homebrew/opt/openssl@1.1/bin:$PATH" export PATH="/opt/homebrew/opt/icu4c/bin:$PATH" export PATH="/opt/homebrew/opt/tidy-html5/lib:$PATH"
PKG_CONFIG_PATH
# .zshenv に下記を定義 export PKG_CONFIG_PATH="/opt/homebrew/opt/krb5/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/icu4c/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/libedit/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/libjpeg/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/libpng/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/libxml2/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/libzip/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/oniguruma/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="/opt/homebrew/opt/tidy-html5/lib/pkgconfig:$PKG_CONFIG_PATH"
PHP_RPATHS
# .zshenv に下記を定義 export PHP_RPATHS="/opt/homebrew/opt/zlib/lib /opt/homebrew/opt/bzip2/lib /opt/homebrew/opt/curl/lib /opt/homebrew/opt/libiconv/lib /opt/homebrew/opt/libedit/lib"
PHP_BUILD_CONFIGURE_OPTS
# .zshenv に下記を定義 export PHP_BUILD_CONFIGURE_OPTS="--with-bz2=$(brew --prefix bzip2) --with-iconv=$(brew --prefix libiconv) --with-tidy=$(brew --prefix tidy-html5) --with-external-pcre=$(brew --prefix pcre2) --with-zip --enable-intl --with-pear"
PHP をインストールする
# PHP のバージョンリスト phpenv install -l # 欲しい PHP をインストール phpenv install 7.4.25 # バージョン切り替え phpenv global 7.4.25 # 更新 phpenv rehash # バージョン確認 php -v # インストール場所 which php /Users/tak/.anyenv/envs/phpenv/shims/php
関連記事
インストールした PHP を Visual Studio Code に設定する方法はこちら!
お仕事ください!
僕が代表を務める 株式会社 EeeeG では Web 制作・システム開発・マーケティング相談を行っています。 なにかお困りごとがあれば、Twitter DM や Web サイトからお気軽にご相談ください。
カテゴリ「Develop」の最新記事