No he tenido problemas para instalar Symfony 2.2.x usando Composer, siempre he copiado la versión estable en http://symfony.com/download .
composer create-project symfony/framework-standard-edition myproject/ 2.2.1
(Tengo Composer instalado a nivel mundial)
Curioso acerca de 2.3.0-RC1, pensé que esto funcionaría sin problemas:
composer create-project symfony/framework-standard-edition mynewerproject/ 2.3.0-RC1
Pero se apagó por los siguientes errores:
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].
¿Necesito modificar el archivo composer.json?
Actualización de la solución
Me faltaba la extensión php intl que proporciona lib-icu
Tan fácil, instale y configure la extensión intl. A partir de PHP 5.3, la extensión Intl se distribuye de forma predeterminada, pero algunas distribuciones, como MAMP, no tienen Intl, por lo que deberá adquirirla. Solía PERA :
Mis pasos:
- Instale la extensión Intl (mantenida por PECL):
$ pear install pecl/intl
- es posible que primero deba agregar el canal pecl a pear. - Si usa MAMP y nunca ha trabajado con pear / pecl, consulte la útil publicación del blog de lullabot ; MAMP no se envía con la fuente de php, por lo que debe descargar la fuente de su versión de php y mover la fuente a
/Applications/MAMP/bin/php/php[version]/include/php
(como se explica en la publicación del blog) - PEAR no pudo encontrar mi php.ini, así que tuve que agregarlo manualmente
extension=intl.so
a php.ini. En MAMP puede editar php.ini fácilmente yendo a Archivo> Editar plantilla> php. [Versión] .ini
Línea de comando:
- Cuando use Composer o la CLI de la consola de Symfony, también necesitará Intl y, dado que la
php
CLI generalmente usa una diferentephp.ini
, querrá agregar la directiva de extensión allí también. Para encontrar el php.ini de su CLI simplemente haga$ php -i |grep php\.ini
para descubrir la ruta del archivo y agregueextension=intl.so
a ese php.ini también. - Para verificar si Intl está instalado, puede hacerlo
$ php -m
para verificar los módulos disponibles.