Wanzul Blog

Nota, pendapat, dan pengajaran yang aku bayar sendiri.

Adding imagick to PHP 7.4 and 8.1 on MacOS .6

Pasang imagick untuk PHP 7.4 dan 8.1 atas MacOS 12.6

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.

ERROR: failed to mkdir /opt/homebrew/Cellar/[email protected]/7.4.32/pecl/20190902

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 ?.

Wan Zulkarnain Avatar

Written by 


Comments

Leave a Reply