Problemas com a dependência do lib-icu ao instalar o Symfony 2.3.x através do Composer
Eu não tive problemas em instalar o Symfony 2.2.x usando o Composer, eu sempre copiei a versão estável emhttp://symfony.com/download.
composer create-project symfony/framework-standard-edition myproject/ 2.2.1
(Eu tenho o Composer instalado globalmente)
Curioso sobre o 2.3.0-RC1, imaginei que isso ocorreria sem problemas:
composer create-project symfony/framework-standard-edition mynewerproject/ 2.3.0-RC1
Mas foi desligado pelos seguintes erros:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- symfony/icu v1.2.0-RC1 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.1.0-RC1 requires lib-icu >=3.8 -> 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/symfony v2.3.0-RC1 requires symfony/icu >=1.0,<2.0 -> satisfiable by symfony/icu[v1.1.0-RC1, v1.2.0-RC1].
- Installation request for symfony/symfony 2.3.* -> satisfiable by symfony/symfony[v2.3.0-RC1].
Preciso ajustar o arquivo composer.json?
Atualização de soluçãoEu estava sentindo falta doextensão de php intl que provêlib-icuTão fácil, instale e configure a extensão intl. A partir do PHP 5.3, a extensão Intl é distribuída por padrão, mas algumas distribuições, como o MAMP, não possuem Intl, portanto você precisará adquiri-la. eu useiPERA:
Meus passos:
Instale a extensão Intl (mantida pelo PECL):$ pear install pecl/intl
- Você pode ter que adicionar o canal pecl para pêra primeiro.Se você usa o MAMP e nunca trabalhei com pêra / pecl checkpost útil do blog da lullabot; MAMP não vem com a fonte php, então você tem quebaixar o código fonte para sua versão php e mova a fonte para/Applications/MAMP/bin/php/php[version]/include/php
(como coberto no post do blog)PEAR não pôde encontrar meu php.ini, então eu tive que adicionar manualmenteextension=intl.so
para php.ini. No MAMP você pode editar facilmente o arquivo php.ini, indo em Arquivo> Editar Modelo> php. [Versão] .iniLinha de comando:
Ao usar o Composer ou o Console CLI do Symfony, você também precisará do Intl ephp
CLI geralmente usa um diferentephp.ini
você também desejará adicionar a diretiva de extensão. Para encontrar o php.ini da sua CLI, simplesmente faça$ php -i |grep php\.ini
para descobrir o caminho do arquivo e adicionarextension=intl.so
para aquele php.ini também.Para verificar se o Intl está instalado, você pode fazer$ php -m
para verificar os módulos disponíveis.