在 Os x El Capitan 上安装国际扩展时无法写入错误

Failed to write error when installing intl extension on Os x El Capitan

我正在尝试在 Os x El Capitan 上安装国际扩展。每次我 运行 sudo pecl install intl,我都会在最后一步遇到以下错误。我不知道为什么复制操作失败。是错误还是我遗漏了什么?

非常感谢任何帮助!

注意:我已经正确安装了autoconficu4c

Build complete.
Don't forget to run 'make test'.

running: make INSTALL_ROOT="/private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0" install
Installing shared extensions:     /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib/php/extensions/no-debug-non-zts-20121212/
running: find "/private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0" | xargs ls -dils
20728993   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0
20729918   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr
20729919   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib
20729920   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib/php
20729921   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib/php/extensions
20729922   0 drwxr-xr-x  3 root  wheel     102 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib/php/extensions/no-debug-non-zts-20121212
20729923 864 -rwxr-xr-x  1 root  wheel  440756 Oct 19 19:33 /private/tmp/pear/install/pear-build-rootM6zI6U/install-intl-3.0.0/usr/lib/php/extensions/no-debug-non-zts-20121212/intl.so

Build process completed successfully
Installing '/usr/lib/php/extensions/no-debug-non-zts-20121212/intl.so'
ERROR: failed to write /usr/lib/php/extensions/no-debug-non-zts-20121212/intl.so (copy(/usr/lib/php/extensions/no-debug-non-zts-20121212/intl.so): failed to open stream: Operation not permitted)

我在尝试安装 intl 时遇到了同样的问题。

必须像 Dan Willis 建议的那样禁用系统完整性保护。

  1. 重新启动计算机。

  2. 当屏幕变黑时,按住 command+r 直到启动进入 Recovery。您将看到 OS X 实用程序菜单。

  3. 接下来打开终端。然后输入以下命令。

    csrutil 禁用

一定要把它写下来以便记住。

  1. 重启你的mac,让它正常启动。

  2. 再次打开终端并再次安装 INTL

    sudo pecl install intl

现在将完成安装。