在 Mac 安裝 PHP 套件

序言

要我說的話,最適合 Web 開發的作業系統順序是:Linux > macOS > Windows。

雖然 macOS 是基於 UNIX 的作業系統,但他終究是 macOS 而不是 Linux 發行版。設定起來,自然不如 Linux 順心而自然。

開始前

在接下去以前,你的 Mac 要有...

  1. Homebrew
  2. 內含 <abbr title="PHP Extension Community Library">PECL</abbr> 的 PHP

你可以輸入以下指令,檢查套件是否有是否安裝:

pecl help version # PECL 與 PHP 版本
brew -v # Homebrew 版本

這裡有如何安裝內含 PECL 的 PHP 教學...至於如何安裝 Homebrew,官網都有指引......而 PECL 是一種套件管理工具,任務大致上與 Composer 差不多,不過 PECL 管了一些更底層(用 C 語言寫的...)的套件,所以 Composer 裝不了。

這次的主角是 igbinary

安裝

安裝起來還不簡單,sudo pecl install igbinary 不就好了?

這麼想的你就錯了: ERROR: failed to mkdir /usr/include/php/ext/igbinary

sudo 也不行是啥巫術?簡直就像有 SELinux 之類的東西在作怪。

......爬文才發現,macOS 還真的有類似 SELinux 的東西:System Integrity Protection

好吧,那就關掉吧。

關掉 SIP

重新開機,看到蘋果商標後,同時按下 <kbd>Command</kbd> + <kbd>R</kbd> 以進入恢復模式。

接著點選終端機,並輸入 csrutil disable 並重新開機。

再安裝

這次就可以直接輸入 sudo pecl install igbinary 了。記得安裝完以後重啟伺服器軟體。

後記

「很多人 Mac 最後不是賣掉,就是灌 Windows。」
「喔,我倒不會。最差的情況是灌 Ubuntu 而已。」

參考資料