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.soa 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
phpCLI 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\.inipara descubrir la ruta del archivo y agregueextension=intl.soa ese php.ini también. - Para verificar si Intl está instalado, puede hacerlo
$ php -mpara verificar los módulos disponibles.