PEAR/PECLに最低限必要なphp.ini
の設定
PEAR/PECLのインストールができたので,早速パッケージやPHPモジュールをインストールしようとしたところ,エラーが出て困ってしまった。PEAR/PECLを使う上で最低限必要な設定があることがわかったので,記録として記す。
導入
ComposerでインストールできないXdebugを,以下のコマンドでPECLでのインストールを試みた。
pecl install xdebug
No releases available for package "pecl.php.net/xdebug" install failed
単に失敗しただけで情報がない。これだけだとわからないので,-v
オプションを指定して情報を増やす。
pecl -v install debug
No releases available for package "pecl.php.net/xdebug" Cannot initialize 'channel://pecl.php.net/xdebug', invalid or missing package file Package "channel://pecl.php.net/xdebug" is not valid install failed
やはりこれでもいまいちよくわからない。そこで,今度はinstall
ではなくsearch
で検索を試した。
pecl -v search xdebug
Connection to `ssl://pecl.php.net:443' failed: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?
今度は有益な情報が表示された。sslの接続に失敗しているようだ。
設定
以前,「peclでのインストール失敗への対応」に記した同様の問題を思い出した。今回はPHPのバージョンを変更したことに伴い,PHPのモジュールなどの設定もリセットされた状態だった。
設定を見直したところ,PEAR/PECLで最低限必要な設定が存在することがわかった。
PEAR/PECLを使う上では最低限opensslのPHPモジュールが必要にだった。これがないと通信できず,検索もインストールも失敗する。
具体的には,以下のphp.ini
の内容さえあれば検索やインストールをUbuntu 18.04のPHP 7.3.3で実行できた。
OpenSSLのPHPモジュールを自分で用意する必要がある。その他,OpenSSLの証明書ファイルも必要だった。
実際に上記のphp.ini
の設定でXdebugのインストールに成功した。
結論
PEAR/PECLに最低限必要なphp.ini
の設定を記した。
PEARのマニュアルに情報がなく,インターネットで調べてもなかなか情報がなく,詰まりどころだった。通信する以上当たり前なのかもしれないが,ちゃんと書いておいて欲しかった。
ひとまず解決できたので,今後似たようなエラーが発生したら,今回のことを思い出すことにする。
“PEAR/PECLに最低限必要な
php.ini
の設定” に対して1件のコメントがあります。