Aku tengah siapkan Macbook Air baru untuk kerja development plugin WordPress. Aku dah pasang PHP 8.1 guna homebrew, package manager yang memang terkenal untuk kebanyakan developer yang guna Mac. Lepas pasang WordPress, WordPress mula komplen pasal library imagick yang tak ada. Aku cuba pasang, tapi kena error.
Hasil google, kebanyakan artikel syorkan PHP dipasang guna package shivammathur (sini). Jadi aku guna package tu supaya aku boleh pasang beberapa versi PHP dalam Mac ni. Ini cara aku pasang imagick (ikut artikel ni).
$ brew install pkg-config imagemagick
$ pecl install imagick
Malangnya, ia tak jadi. Aku dapat error yang cakap file tu dah wujud.

Aku buka directory /opt/homebrew/Cellar/php@7./7.4.32 tu dan aku rename file bernama pecl jadi pecl.bak (untuk backup, just in-case).
$ cd /opt/homebrew/Cellar/[email protected]/7.4.32
$ mv pecl pecl.bak
Aku jalankan balik pecl install imagick dan semuanya nampak okay. Aku juga perasan directory pemasangan berbeza daripada apa yang dah didefinisikan dalam PHP.ini.

Jadi tak hairanlah bila aku cuba jalankan $ php -v, aku dapat satu lagi error.

Jadi aku cari file PHP.ini aku, tengok baris extension_dir dan tukar ikut lokasi imagick dipasang.

Sekarang aku dah boleh jalankan $ PHP -v tanpa error, dan imagick berjaya dipasang. Tapi ambil perhatian, ini hanya jalan untuk PHP 7.4. Entah kenapa, untuk PHP 8.1 kau kena define full path ke extension imagick dalam file php.ini.

Kalau kau jumpa sebab dan/atau solusi lain kenapa full path perlu didefinisikan, kongsikan dengan aku di ruangan komen bawah ?.

Leave a Reply
You must be logged in to post a comment.