在 Mac 上通过 PECL 安装 PHP imagick

Installing PHP imagick through PECL on Mac

我正在尝试在装有 High Sierra 10.13.5 的 Mac 上安装 php imagick 扩展程序。

我通过 brew 安装了 PHP 7.2,并安装了 PEAR 1.10.5。当尝试使用 sudo pecl install imagick 安装 imagick 时,我得到:

Build process completed successfully
Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
ERROR: failed to mkdir /usr/include/php/ext/imagick

看起来我正在点击 Mac 权限,安装目录应该在 /usr/local 中,但我不知道如何更改它。有什么解决办法吗?

最后我需要 PHP 7.1 而不是 7.2 但我仍然遇到同样的问题。

不确定我采取的所有步骤是否都是必要的,但我是这样解决的:

  • 从 运行ning php-config
  • 获取当前 php 扩展目录
  • 复制该目录中的所有内容(在我的例子中是 /usr/lib/php/extensions/no-debug-non-zts-20160303)/usr/local 中的等效项,所以在我的例子中是 /usr/local/lib/php/extensions/no-debug-non-zts-20160303
  • 更新 php.ini 并将 extensions_dir 设置为 /usr/local
  • 中的新目录
  • 从 pecl 错误转到构建目录并找到 imagick tgz
  • 解压并进入创建的目录
  • 作为根用户:
    • 运行 ./phpize
    • 运行 ./configure
    • 运行 make
    • 编辑 makefile 并将包含目录更改为 /usr/local 等效目录。
    • 运行 make install
  • 编辑 php.ini 并将 imagick.so 添加到扩展部分

它现在似乎对我有用,但这可能不是安装它的最简单方法。