9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Homebrew の PHP インストール方法が変わって imagick 入れるまで

Last updated at Posted at 2018-04-09

Homebrewの homebrew/php が使えなくなった。

参考: https://brew.sh/2018/01/19/homebrew-1.5.0/

php71とかで始まるパッケージはすべて消失したので、php@7.1で入れる。こちらのページを参考に: http://rskull.hateblo.jp/entry/2018/04/06/164236

で、intlとかmcryptとかは最初から入ってたんだけど、 imagickを入れたかった。でも、php71-imagickはもうない。ので、pecl で入れる。

pecl install imagick

が、php -v 実行するとエラーが出る。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php@7.1/7.1.16/lib/php/20160303/imagick.so' - dlopen(/usr/local/Cellar/php@7.1/7.1.16/lib/php/20160303/imagick.so, 9): image not found in Unknown on line 0

ライブラリがロードできてないとな。たしかに、/usr/local/Cellar/php@7.1/7.1.16/lib/php/20160303/imagick.soというファイルはなくて、実際探すとファイルは/usr/local/lib/php/pecl/20160303/imagick.soにある。homebrewとpeclの相性を解決しないといけない気がする。

で、php.iniを修正するんだけど、なんかphp.iniを開くと、一番上にimagick.soが無理やり追加されててひどい。

extension="imagick.so"
[PHP]

ひどいので、この行を削除して/usr/local/etc/php/7.1/conf.d/ext-imagick.ini を作った。

[imagick]
extension="/usr/local/lib/php/pecl/20160303/imagick.so"

これで、php -iでチェックすると、ちゃんと入っている模様。

imagick

imagick module => enabled
imagick module version => 3.4.3
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel

参考リンク: https://github.com/Homebrew/homebrew-core/issues/26108

9
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?