Saya tidak mengalami masalah dalam menginstal Symfony 2.2.x menggunakan Komposer, saya selalu menyalin versi stabil di http://symfony.com/download .
composer create-project symfony/framework-standard-edition myproject/ 2.2.1
(Saya telah menginstal Komposer secara global)
Penasaran tentang 2.3.0-RC1 Saya pikir ini akan berjalan lancar:
composer create-project symfony/framework-standard-edition mynewerproject/ 2.3.0-RC1
Tetapi dimatikan karena kesalahan berikut:
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].
Apakah saya perlu mengubah file composer.json?
Pembaruan Solusi
Saya kehilangan ekstensi intl php yang menyediakan lib-icu
Sangat mudah, instal dan konfigurasi ekstensi intl. Mulai PHP 5.3, ekstensi Intl didistribusikan secara default, tetapi beberapa distribusi, seperti MAMP, tidak memiliki Intl sehingga Anda harus mendapatkannya. Saya menggunakan PEAR :
Langkah saya:
- Instal ekstensi Intl (dikelola oleh PECL):
$ pear install pecl/intl
- Anda mungkin harus menambahkan saluran pecl ke pir terlebih dahulu. - Jika Anda menggunakan MAMP dan belum pernah bekerja dengan pear / pecl check lullabot's membantu entri blog ; MAMP tidak dikirimkan dengan sumber php, jadi Anda harus mengunduh sumber untuk versi php Anda dan memindahkan sumber ke
/Applications/MAMP/bin/php/php[version]/include/php
(seperti yang tercakup dalam posting blog) - PEAR tidak dapat menemukan php.ini saya, jadi saya harus menambahkan
extension=intl.so
ke php.ini secara manual . Di MAMP Anda dapat mengedit php.ini dengan mudah dengan masuk ke File> Edit Template> php. [Versi] .ini
Garis komando:
- Saat menggunakan Composer atau Symfony's Console CLI, Anda juga memerlukan Intl dan karena
php
CLI biasanya menggunakan yang berbeda,php.ini
Anda juga ingin menambahkan arahan ekstensi di sana. Untuk menemukan php.ini CLI Anda cukup lakukan$ php -i |grep php\.ini
untuk menemukan path file dan tambahkanextension=intl.so
ke php.ini itu juga. - Untuk memeriksa apakah Intl terinstal, Anda dapat melakukan
$ php -m
untuk memeriksa modul yang tersedia.