🐘
Macbook Pro M1 2020 を買ったので phpenv で PHP 8.0.1 をインストールする
まっさらな状態のMacに最新のPHPを入れましょう。
以下のツールについては予め導入しておきます
- Xcode
xcode-select --install
- Homebrew
-
anyenv
- 他の言語も使うため
- anyenv-update プラグイン
-
anyenv
経由で phpenv
必要なパッケージ
brew install autoconf
brew install openssl
brew install icu4c
brew install pkg-config
brew install bzip2
brew install libiconv
brew install oniguruma
brew install tidy-html5
brew install libzip
brew install pcre2
brew install libpng
brew install libjpeg
brew install libxml2
brew install zlib
brew install libedit
インストール
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)" \
PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j$(sysctl -n hw.logicalcpu_max)" \
phpenv install --ini development 8.0.1
-
brew install <package>
したもののパスの指定はbrew --prefix <package>
するようにします。いくつか決め打ちで書いている記事が散見されますが… -
php.ini
は開発用のものを指定しています (--ini development
)
備考
躓いたところは省いてます。
余談
configure: WARNING: JIT not supported by host architecture
しょうがないね
余談2
phpenv
以外の手段を探した方がいいのでは
宣伝
PHPerKaigi 2021 に登壇予定です
PHPやPHPじゃない話もたくさん聞ける PHPerKaigi 2021 はチケット絶賛発売中のようです!
今年はオンライン開催、ニコニコ動画で配信です!
トーク中はバシバシ #コメントたくさん 流しましょう!!
追記 (2021-08-01 20:24:00)
先日、社のメンバーが phpenv install
をしたら躓いていたので本記事を共有しました
が、ごく一般的に必要な拡張が足りてないのでそのままだと使い物にならなかったので、備考的に追記します
例えば PostgreSQL が必要な場合は
brew install postgresql
して PHP_BUILD_CONFIGURE_OPTS
に以下を追加します
--with-pdo-pgsql=$(brew --prefix postgresql)"
MySQL の場合も同じようにすればOKかと
Discussion
自信ないんですが
PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j$(sysctl -n hw.logicalcpu_max)"
これって論理コア数でいいんですかね?
PDO を入れる場合について追記した