【发布时间】:2014-01-27 04:58:25
【问题描述】:
我遇到了与 this one 相同的问题,但那里提供的解决方案对我不起作用。
我从the Symfony Downloads Page 下载了带有供应商的 Symfony 2.4.1 标准供应商包。提取文件并下载 composer.phar 后,我运行 php composer.phar install 并收到此错误:
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- symfony/icu v1.2.0 requires lib-icu >=4.4 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it.
- symfony/icu v1.2.0 requires lib-icu >=4.4 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it.
- Installation request for symfony/icu v1.2.0 -> satisfiable by symfony/icu[v1.2.0].
按照上面链接的线程上的说明,我更新了 PEAR 库并执行了sudo pear install pecl/intl。 (这是在 CentOS 上,所以我没有遵循 MAMP 的东西)。这没有用,我意识到我必须做一个sudo yum install libicu。在此之后,sudo pear install pecl/intl 工作,我编辑php.ini 添加extension=intl.so 行,然后重新启动 Apache 服务器。
但我仍然遇到与上述相同的错误,此外,每当我运行 PHP 时,它都会发出警告:
PHP Warning: Module 'intl' already loaded in Unknown on line 0
查看phpinfo() 的输出,我看到安装的intl 版本是1.1.0,ICU 版本是4.2.1(这解释了为什么Symfony 抱怨它需要4.4)。但是当我这样做时/usr/bin/pecl install intl 它说
pecl/intl is already installed and is the same as the released version 3.0.0
而且sudo yum install libicu 应该已经安装了最新版本。
有什么办法可以得到4.4版本的吗?
【问题讨论】: