Problemy z zależnością lib-icu podczas instalacji Symfony 2.3.x za pośrednictwem Composer

Nie miałem problemów z instalacją Symfony 2.2.x przy użyciu Composer, zawsze kopiowałem wersję stabilną pod adresemhttp://symfony.com/download.

composer create-project symfony/framework-standard-edition myproject/ 2.2.1

(Mam zainstalowany Composer na całym świecie)
Ciekawy o 2.3.0-RC1 doszedłem do wniosku, że wszystko pójdzie gładko:

composer create-project symfony/framework-standard-edition mynewerproject/ 2.3.0-RC1

Ale został zamknięty przez następujące błędy:

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].

Czy muszę zmodyfikować plik composer.json?

Aktualizacja rozwiązaniaBrakowało mirozszerzenie intl php co zapewnialib-icu

Tak łatwo zainstalować i skonfigurować rozszerzenie intl. Od PHP 5.3 rozszerzenie Intl jest domyślnie dystrybuowane, ale niektóre dystrybucje, takie jak MAMP, nie mają Intl, więc musisz je zdobyć. użyłemGRUSZKA:

Moje kroki:

Zainstaluj rozszerzenie Intl (utrzymywane przez PECL):$ pear install pecl/intl - być może trzeba najpierw dodać kanał pecl do gruszki.Jeśli używasz MAMP i nigdy nie pracowałem z kontrolą gruszki / peclapomocny post na blogu lullabot; MAMP nie jest wysyłany ze źródłem php, więc musiszpobierz źródło swojej wersji php i przenieś źródło do/Applications/MAMP/bin/php/php[version]/include/php (jak opisano w blogu)PEAR nie mógł znaleźć mojego php.ini, więc musiałem ręcznie dodaćextension=intl.so do php.ini. W MAMP możesz łatwo edytować php.ini, przechodząc do Plik> Edytuj szablon> php. [Wersja] .ini

Wiersz poleceń:

Używając Composer lub Symfony's Console CLI, będziesz potrzebował Intl i od czasuphp CLI zwykle używa innegophp.ini chcesz tam także dodać dyrektywę rozszerzenia. Aby znaleźć php.ini swojego interfejsu CLI, po prostu wykonaj$ php -i |grep php\.ini odkryć ścieżkę do pliku i dodaćextension=intl.so do tego php.ini.Aby sprawdzić, czy zainstalowano Intl, możesz to zrobić$ php -m sprawdzić dostępne moduły.

questionAnswers(6)

yourAnswerToTheQuestion