ユーザ向け FAQ

PEAR って何ですか?

こちら を参照してください。

"No release with state equal to: 'stable' found for 'Packagename'"? というエラーメッセージがパッケージのインストールの際に出るのですが?

Greg Beaver による返答。

そのパッケージは、リリースされてはいるのですが、安定版 (stable) では無いためです。対処方法は 2 つあります。

  1. preferred_state を alpha か beta にセットした後、インストール作業を行う

    $ pear config-set preferred_state alpha

    $ pear install Packagename

  2. 開発状況フラグやバージョン番号を直接指定してインストールする

    $ pear install Packagename-alpha

    $ pear install Packagename-1.5.3

パッケージをインストールしようとすると "No handlers for package.xml version 2.0" と言われるのですが?

あなたの使用している PEAR のバージョンが 1.4.0 未満です。

そのパッケージをインストールするには、 次のコマンドで PEAR を更新しなければなりません。

$ pear upgrade PEAR

これは、最新バージョンの PEAR をインストールします。 最新バージョンでは、package.xml バージョン 2.0 しか存在しないパッケージをインストールすることができます。

古いバージョンの PEAR (< 1.3.6) がインストールされている場合は、 次のふたつのコマンドを使用して最新の PEAR をインストールする必要があります。

$ pear upgrade -a PEAR-1.3.6

$ pear upgrade -a PEAR

このパッケージのドキュメントがありません! どうやってこれを使えばいいんですか?

すべてのパッケージのドキュメントが PEAR マニュアルにあるというわけではありませんが、 ほとんどすべてのパッケージにはサンプルが付属しています。 このサンプルは、パッケージをコマンドラインでインストールする際に自動的にインストールされます。 インストール先は $peardir/docs/$packagename/ です。

サンプル/ドキュメントのディレクトリを調べるには、コマンドラインで $ pear config-get doc_dir と入力します。

PEAR について疑問があります。どこで質問すればいいですか?

  • PEAR コンポーネントの使用法についての一般的な質問は、メーリングリスト pear-general@lists.php.net に投稿してください。

  • PEAR コンポーネントの開発についての技術的な議論は、すべて pear-dev@lists.php.net でお願いします。

  • ウェブサイトに関する質問は、 pear-webmaster@lists.php.net へ送ってください。

これらメーリングリストの購読についての情報は、こちら を参照してください。

上記のすべてのメーリング・リストは、言語として英語が使われております。 また、質問は、丁寧にお願いします。;-)

PEAR は Mac OS X で使えますか?

Brett Bieber による回答

10.5 までのすべてのバージョンの Mac OS X には、PEAR がデフォルトで含まれています。 Mac OS X 10.5 (Leopard) の場合は、標準的な手順で PEAR をインストールしなければなりません。

OS X 10.4 以前を使用している場合は、 Marc Liyanage's PHP packages のようなバイナリパッケージを用いて新しいバージョンの PHP にアップグレードしたくなるかもしれません。 別の PHP パッケージをインストールしている場合、システム上に複数のバージョンの PHP や PEAR がインストールされていることもあるでしょう。 このような場合に自分がどのバージョンを使用しているのかを知るには、まずコンソールで which pear と入力して PEAR の場所を確かめます。そして pear -V で PEAR のバージョンに関する情報を取得し、 pear config-show で設定の詳細を調べます。

Max OS X のデフォルトの状態から何も変更していない場合、使用している PEAR は /usr/bin/pear であり、これは OS X に含まれている PHP 4 用に設定されています。 この場合、PHP 5 をその Mac で使用するにはいくつかの方法があります。

Marc Liyanage's PHP package を使用する場合は PHP5 用の PEAR のインストール先をフルパスで指定します。たとえば /usr/local/php5/bin/pear install {packagename} とすると、 PHP 5 用のパッケージがインストールされます (パッケージのインストールやアップグレードには、おそらく sudo が必要です)。

あるいは、pear config-set を使用して OS X 版の PEAR のすべてのパスを変更することもできます。 すべてのパスを PHP 5 のインストール先に向けることを忘れないようにしましょう。

私がお勧めする方法は、まず Apple が提供している PHP 4 を sudo rm /usr/bin/php /usr/bin/pear で削除し、そして /usr/bin の php と PEAR を Marc Liyanage 版のパッケージのインストール先へのシンボリックリンクとするものです。 次のコマンドを実行します。 sudo ln -s /usr/local/php5/bin/php /usr/bin/php && sudo ln -s /usr/local/php5/bin/pear /usr/bin/pear 注意すべき点としては、Apple がたまに OSX 版の PHP を更新するということがあります。その場合、 /usr/bin/php が標準版に戻されてしまいます。 ソフトウェアのアップデートには十分注意し、 OS X のアップデートによってどのソフトウェアが更新されるのかに気をつけるようにしましょう。

注意: Apple が Mac OS X <= 10.4 用に PHP 4 を配布し続けるかどうかは定かではありません。 つまり、この手順は変わる可能性があり、Mac OS X のバージョンによっても異なるかもしれません。 Apple のドキュメントでデフォルトのインストール内容について調べてから修正を加えるようにしましょう。

PEAR は Windows で動作しますか?

Windows で PEAR を動作させるには、PEAR をインストールしたディレクトリ (例えばc:\php\pear)を php.ini の include_path ディレクティブに追加します。

注:*nix 特有のコマンドを使用するため、 Windows で動作しないクラス (たとえば Schedule/At.php)があります。

windows 版 PHP 4.3.x にバンドルされている go-pear.php やパッケージが古いようですか?

一般的な PEAR の開発と様相が異なり、windows 版 PHP 4.3.x のビルドは、 CVS でトラッキングされていません。windows 版 のスナップショットが ビルドされているマシンで扱われているのです。 ですので、PEAR が更新されても、こちらは更新されないことがよくあります。 PHP 5.x のビルドシステムはこれと異なり、PEAR の最新版に自動的に更新されるように なっています。

PHP 4.3.x のパッケージが古く動かなくなっているのを見つけたら、 その旨を pear-dev@lists.php.net に報告してください。

PEAR のサイトにログインすると変なエラーメッセージがでるのですが?

pear.php.netCAcert により認証された SSL キーを使っているため、警告が表示されることがあります。 というのも、そのルート証明書が一般的なブラウザには インストールされていないためです。

Mozilla のブラウザを使っているなら、こちらのサイト で "Root Certificate (PEM Format)" のリンクをクリックすると 証明書をインストールできます。 新しい認証局を信頼するかどうか聞かれたら、 "この認証局を web サイトの同定に使用する。" のボックスをチェックし、OK をクリックします。

Internet Explorer を使っている人は、こちら を参照してください。

Mac OS X のユーザは、上記の PEM ファイルをダウンロードし、 "キーチェーンアクセス" ユーティリティーを使って "ファイル" メニューから "読み込み" として証明書をインストールします。

Windows で、カスタマイズしたフォルダにインストールできない

そのフォルダの表示方法がカスタマイズされている (訳注: フォルダの右クリック->「プロパティ」->「カスタマイズ」タブで変更されている) かどうか調べるために、 Windows はフォルダの "読み取り専用" 属性を使用します。 この属性は、書き込み権限を管理する際には使用されません。 "読み取り専用" のフォルダにもファイルを作成することができます。詳細は http://support.microsoft.com/default.aspx?scid=kb;ja-jp;326549 を参照ください。

PEAR インストーラは、この読み取り専用属性を検出するとインストールを中止します。 悲しいことに、カスタマイズしたフォルダと本当に読み取り専用のフォルダを Windows では区別できないのです。

対策としては、PEAR パッケージをインストールするフォルダを カスタマイズしないようにしてください。

古い版の PEAR はインストールされているが、 新しい版をインストールする権限がない時はどうすれば良いですか?

$ which pear とすると /usr/local/bin/pear など出て pear コマンドは使えるのだけれど、 $ pear -V とするとバージョンが古い場合とか、その他の理由で、 違うバージョンの PEAR を使いたい場合は、ホームディレクトリにインストールすると 良いでしょう。

http://pear.php.net/go-pear.phar を訪れ、gopear.php という名で保存し、 $ php gopear.php とするか、 $ lynx -source http://pear.php.net/go-pear.phar | php -q とするかします。

PEAR のインストールにあたっては、/home/user/pear を prefix に指定してください(ここで user は、あなたのユーザ名)。

インストールが完了したら、PATH 環境変数に、新しい PEAR のディレクトリを 既存の PATH の に追加してください。

たとえば、~/.bashrc~/.profile の最後のほうに、export PATH=/home/user/pear/bin:$PATH を追加します。$ echo $PATH として、 /home/user/pear/bin:[...] のように表示されるでしょうか。

$ which pear とすると /home/user/pear/bin/pear と表示され、$ pear -V で "PEAR Version: 1.4.8" (執筆時。これ以降であればよい)と出力されると問題ありません。 最新の安定版については、http://pear.php.net/package/PEAR の Current Release のところをチェックしてください。

最後に、include_path を正しくセットします。 たとえば、次のようにします。

<?php
 $path 
ini_get('include_path');
 
ini_set('include_path''/home/user/pear'.PATH_SEPARATOR.$path);
 
?>

パッケージ X をアップデートしたので "undefined function Y" というエラーはなくなるはずです。なのに、PHP はまだエラーを出し続けます。なぜでしょう?

おそらく、二ヶ所の PEAR ディレクトリが include_path に設定されているものと思われます。 そして、include_path で最初に指定されているディレクトリのせいで、 実際にパッケージを更新した場所が見えなくなっているのでしょう。 不要なディレクトリを include_path から削除するか、include_path 内での並び順を変更すれば、エラーメッセージは表示されなくなります。

ダウンロードした go-pear.php が PHP としてパースされません! なぜでしょう?

go-pear.php を取得する手順 にしたがって、Windows の Internet Explorer で取得した場合、 おかしな現象 (ファイル名 go-pear.php を指定したにもかかわらず、 そのファイルはパースされずに PHP のソースコードが表示される) が発生するかも知れません。

問題は、Internet Explorer が PHP ソースコードの前後に HTML のコードを追加し、 ファイルを HTML として保存してしまうことにあります。これは、PHP のソースコードをよりきれいに表示するために行われています。

この問題を回避するには、ブラウザのソースコード表示を使用しなければなりません。 つまり、マウスの右クリックメニューで "ソースの表示" を選択します。ここに表示された内容をエディタで go-pear.php として保存すると、PHP はそのファイルを適切にパースできるようになります。

Windows 版の PHP には、go-pear.bat というファイルが同梱されていることに注意しましょう。 Windows では、go-pear.php ではなくこのバッチファイルを使用することを推奨します。

FAQ - 頻出する質問 (Previous) 開発者向けの FAQ (Next)
Last updated: Tue, 30 Sep 2014 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.