如何在PHP环境中安装或启用PHP Pecl Intl扩展?
我有一个与Mac OS X Snow Leopard捆绑在一起的PHP配置。
从源和$pecl install intl
安装libicu会导致以下错误:
/private/tmp/pear/temp/intl/collator/collator_class.c:92: error: duplicate 'static'
/private/tmp/pear/temp/intl/collator/collator_class.c:96: error: duplicate 'static'
/private/tmp/pear/temp/intl/collator/collator_class.c:101: error: duplicate 'static'
/private/tmp/pear/temp/intl/collator/collator_class.c:107: error: duplicate 'static'
make: *** [collator/collator_class.lo] Error 1
ERROR: `make' failed
非常感谢任何帮助!
答案 0 :(得分:8)
这是我在OSX 10.9 Mavericks中所做的:
使用Homebrew安装一些依赖项:
$ brew install autoconf
$ brew install icu4s
$ brew link --force icu4s
安装并验证Pear / PECL(来自http://techtastico.com/post/como-instalar-pear-y-pecl-en-os-x-mavericks/的说明):
$ curl -O http://pear.php.net/go-pear.phar
$ sudo php -d detect_unicode=0 go-pear.phar
[ Select 1 and enter /usr/local/pear ]
[ Select 4 and enter /usr/local/bin ]
[ Press return ]
$ pear version
安装PECL国际:
$ sudo pecl install intl
$ sudo cp /private/etc/php.ini{.default,}
$ sudo chmod 644 /private/etc/php.ini
$ echo extension=intl.so >> /private/etc/php.ini
答案 1 :(得分:3)
目前我已经重新编译了我的PHP安装。我用我的配置字符串创建了一个gist,我将不断更新。
liip已经创建了一个很好的二进制文件来避免所有这些麻烦。它基于原始的entropy.ch二进制文件,我建议使用它在Mac上进行PHP开发。
答案 2 :(得分:1)
迟到总比没有好,但如果你像我一样直接从php.net安装PHP(而不是使用Homebrew或Port之类的东西,那么你只需按照以下链接安装Pear和PECL:
http://akrabat.com/php/setting-up-php-mysql-on-os-x-10-7-lion/
它对我来说很好。
答案 3 :(得分:1)
在我的Mac上我使用brew安装了一个带有pear的php版本。这解决了我的所有问题,因为默认的osX php在尝试了许多不同的方法之后对我没有用。如果你已经这样做了,你可以尝试不安装php / pear。
你需要Homebrew http://brew.sh/
安装PHP
brew install php56 --with-pear
或brew install php56 pear
安装autoconf
brew install autoconf
安装icu4c
brew install icu4c
创建符号链接
brew link --force icu4c
使用(pearl)pecl安装intl
sudo pecl install intl
Homebrew应该为其各自的命令启用intl和symlink所有正确的版本。