2013-02-04 1 views
17

私はパッケージのインストールについて事実上何も知らない。非常に具体的なチュートリアルに従うことで、Zend Framework 1をyumでインストールすることができました。CentOSにPHP intl extensionをインストールするにはどうすればよいですか?

今、PHPのintl拡張が必要です。インストール方法を理解できません。

私は

yum list php*intl 

を行なったし、可能な1があったことを見ました。だから私は

yum install php-intl 

を行なったし、次のエラーメッセージが表示されました:

Error: Package: php-intl-5.3.3-14.el6_3.x86_64 (updates) 
     Requires: php-common = 5.3.3-14.el6_3 
     Installed: php-common-5.3.17-2.el6.remi.x86_64 (@remi) 
      php-common = 5.3.17-2.el6.remi 
     Available: php-common-5.3.3-3.el6_2.8.x86_64 (base) 
      php-common = 5.3.3-3.el6_2.8 
     Available: php-common-5.3.3-14.el6_3.x86_64 (updates) 
      php-common = 5.3.3-14.el6_3 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

I私は、彼らがどうなるのか知らなかったと私は壊すのが怖いので、メッセージに示された提案をしようとしませんでした何か。これはプロダクションマシンです。テストする別のマシンはありません。 PHPと同じバージョンのrpmをダウンロードしようとしましたが、運がなかったのです。

これら二つの提案は何をしていますか?安全なを試してみませんか? intl拡張をインストールするために他に何ができますか?

答えて

20

あなたはレミのリポジトリからのphp-commomを持っているとして、あなたはまた、レミからのphp-国際空港を取得する必要があります。

次のように--enable-repoオプションを追加します。

yum --enablerepo=remi install php-intl 
+0

です。しかし、答えは総理にかなっていると私はレミはまだPHPの5.3.x.だったとき、それは望ましい結果を与えているだろうと仮定します – toxalot

+0

そうだね、私は、同じエラーメッセージが表示されましたが、私は5.4をPHPました –

1

複数のパッケージを競合するバージョンに更新しようとしているため、Yumはエラーを投げています。 yumの出力によると、php-intlには特定のバージョンのphp-commonが必要です。すべてのジャンクを削除する:

Requires 5.3.3-14 
Installed 5.3.17-2 
Available 1st Option: 5.3.3-3 
Available 2nd Option: 5.3.3-14 

これは、すでにPHP-国際空港によって許可されているよりもPHP-共通(5.3.17-2)のより新しいバージョンをインストールしていることを教えてくれる。

あなたには2つの選択肢があると思います。 (初心者自分自身として、私はDEV環境で練習することなく、これらをしようとしないでしょう。)

1)は、スーパーユーザーに同様の質問からの引用レミパッケージ

を削除します。 "すべてのremi phpパッケージを削除し、remiリポジトリを無効にして、デフォルトのcentos 6 php 5.3.3パッケージをインストールしてみてください。"

https://superuser.com/questions/505340/centos-6-how-to-install-php-mysql-when-php-common-remi-is-present

2)あなたはより多くの依存関係の問題に遭遇すると、他のパッケージをダウングレードしなければならない場合、私は見当がつかないバージョン5.3.3-14

yum downgrade php-common 

へのphp-共通ダウングレードします。私はここで詳細を見つけました。

https://www.centos.org/modules/newbb/viewtopic.php?topic_id=40567&forum=56

他のスタックExchangeサイトは、同様の質問が表示されます。

https://serverfault.com/search?q=centos+error+package(370の結果)

https://unix.stackexchange.com/search?q=centos+error+package(57の結果)

6

を使用すると、5.6のような高いPHPのバージョンを持っている場合は、すべての追加の依存関係をインストールするには、両方のremiremi-php56リポジトリを有効にする必要があります。

yum --enablerepo=remi,remi-php56 install php-intl 
2

私は成功し、次の手順を使用してPECL経由INTLをインストールしました。

1)インストールICU & LIBS:

yum -y install icu libicu libicu-devel

2)PHP-develのパッケージとは、phpize:コースGCCの

yum -y install php-devel phpize

3)と、:

yum -y install gcc gcc-cpp gcc-c++

これはme.my PHPのバージョンのために働いている

はレミが今PHP 5.4であると私はまだアップグレードする準備ができていないよので、私はこれをテストすることができないんです5.6.12

関連する問題