У меня не было проблем с установкой Symfony 2.2.x с использованием Composer, я всегда просто скопировал стабильную версию на http://symfony.com/download.
composer create-project symfony/framework-standard-edition myproject/ 2.2.1
(У меня есть Composer установлен глобально)
Любопытный о 2.3.0-RC1 Я решил, что это пройдет гладко:
composer create-project symfony/framework-standard-edition mynewerproject/ 2.3.0-RC1
Но был отключен следующими ошибками:
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].
Нужно ли мне настроить файл composer.json?
Обновление решения
Мне не хватает расширения php intl, которое предоставляет lib-icu
Так просто, установите и настройте расширение intl. Начиная с PHP 5.3 расширение Intl распространяется по умолчанию, но в некоторых дистрибутивах, таких как MAMP, нет Intl, поэтому вам нужно его приобрести. Я использовал PEAR:
Мои шаги:
- Установите расширение Intl (поддерживается PECL):
$ pear install pecl/intl
- вам может потребоваться добавить канал pecl для груши в первую очередь. - Если вы используете MAMP и никогда не работали с pear/pecl check lullabot полезным сообщением в блоге; MAMP не поставляется с источником php, поэтому вы должны загрузить исходный код для вашей версии php и переместить источник в
/Applications/MAMP/bin/php/php[version]/include/php
(как описано в сообщении блога ) - PEAR не смог найти мой php.ini, поэтому мне пришлось вручную добавить
extension=intl.so
в php.ini. В MAMP вы можете легко редактировать php.ini, перейдя в File > Edit Template > php. [Version].ini
Командная строка:
- При использовании CLI Composer или Symfony Console вам также понадобится Intl, и поскольку CLI
php
обычно использует другойphp.ini
, вы также захотите добавить директиву расширения. Чтобы найти ваш CLI php.ini, просто$ php -i |grep php\.ini
, чтобы открыть путь к файлу и добавитьextension=intl.so
в этот php.ini. - Чтобы проверить, установлен ли Intl, вы можете сделать
$ php -m
для проверки доступных модулей.