ImageMagick Brew installation with PHP Module in Mac OS X

Viewed 78236

I have installed ImageMagick using brew install imagemagick. This all worked fine and I can run any ImageMagick command from the Terminal / Command line.

Now when I try to use the ImageMagick classes in PHP, I get an error Class 'Imagick' not found in .... I guess this is because the ImageMagick module is not loaded.

Could anyone help me to get this thing working in PHP? Thanks!

Additional info:
Mac OS X Version: 10.8: Mountain Lion
PHP Version: 5.3.13

12 Answers

php72-imagick is now deprecated as imagick is part of php binary itself. Use pecl to install imagick e.g.:

brew install php
brew install imagemagick
brew install pkg-config
pecl install imagick

this one worked for me:

brew install imagemagick       # If it's not already installed
mkdir /usr/local/lib/php/pecl  # On my system this dir didn't exist and this caused pecl install to fail
pecl install imagick

here

I've looking for correct way to install imagick on Mojavie and found solution that fully worked.

  1. brew install imagemagick@6
  2. brew install php@7.1
  3. Install headers (Xcode-select --install)
  4. Download imagick source code from: https://pecl.php.net/package/imagick
  5. Open terminal and enter unzipped folder imagick-3.4.3/imagick-3.4.3 (in my case)
  6. Run command phpize
  7. ./configure
  8. make

And now if error occurs like MagicWand not found, edit file Makefile and look for CPPFLAGS = -I/usr/local/opt/imagemagick@6/include/. Inspect if in include folder there is no other folder. In my case it should be like this: CPPFLAGS = -I/usr/local/opt/imagemagick@6/include/ImageMagick-6

save and return to terminal and type make (after finished) sudo make install

imagick.so is located in imagick-3.4.3/imagick-3.4.3/modules

Ok after 1 hour at this I have figured it out. The mac is not giving the pecl script permissions to make a PHP directory. To resolve do as follows.

brew install imagemagick
Sudo pecl install imagick .  
php --ini | grep "Loaded Configuration File"
Add extension=imagick.so under extensions.

The install will be complete. Then, to test run:

php -r "print(class_exists('imagick'));"

I cannot add comments because of reputation, but to add to this anwser:

answered Apr 12 at 16:52

Grzegorz Miśkiewicz

I was getting a missing php.h file, so as per Installing xdebug on MacOs Mojave - 'php.h' file not found I installed the necessary file via the below command:

sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

Related