【大阪 / 横浜 / 徳島】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜 / 徳島】インフラ / サーバーサイドエンジニア募集中!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【200ヶ国以上に対応】グローバル eSIM「ビヨンドSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【中国への旅行・出張・駐在なら】中国SIMサービス「チョコSIM」

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【グローバル専用サービス】北米・中国でも、ビヨンドのMSP

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

XAMPP環境でPEARインストールできないときのTips

システム部の山田です。
今回はWindowsのXampp環境で困ったときのお話。

ある案件で大容量のXMLログファイルを扱う必要があったので、
PEARライブラリのXML_Query2XMLを使ってみようと思ったのですが...

C:\xampp\php>pear install XML_Query2XML
WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
Did not download optional dependencies: pear/Net_LDAP2, pear/I18N_UnicodeString, use --alldeps to download automatically
pear/XML_Query2XML can optionally use package "pear/Net_LDAP2"
pear/XML_Query2XML can optionally use package "pear/I18N_UnicodeString"
downloading XML_Query2XML-1.7.2.tgz ...
Starting to download XML_Query2XML-1.7.2.tgz (388,604 bytes)
.................done: 388,604 bytes
ERROR: failed to mkdir C:\php\pear\docs\XML_Query2XML\cases\case01

インストールでエラーが!!!
「failed to mkdir C:\php\pear\docs\XML_Query2XML\cases\case01」???
僕の環境では「C:\xampp\php」以下に創ってほしいんだけどな。。。
こりゃ設定ミスってるな、と思いとりあえずPEARの設定を確認することに。

C:\xampp\php>pear config-show
CONFIGURATION (CHANNEL PEAR.PHP.NET):
(略)
PEAR executables directory     bin_dir          C:\xampp\php
PEAR documentation directory   doc_dir          C:\php\pear\docs
PHP extension directory        ext_dir          C:\xampp\php\ext
PEAR directory                 php_dir          C:\xampp\php\pear
PEAR Installer cache directory cache_dir        R:\Temp\pear\cache
PEAR configuration file        cfg_dir          C:\php\pear\cfg
directory
PEAR data directory            data_dir         C:\php\pear\data
PEAR Installer download        download_dir     R:\Temp\pear\download
directory
PHP CLI/CGI binary             php_bin          C:\xampp\php\.\php.exe
php.ini location               php_ini          <not set>
--program-prefix passed to     php_prefix       <not set>
PHP's ./configure
--program-suffix passed to     php_suffix       <not set>
PHP's ./configure
PEAR Installer temp directory  temp_dir         R:\Temp\pear\temp
PEAR test directory            test_dir         C:\php\pear\tests
PEAR www files directory       www_dir          C:\php\pear\www
(略)

doc_dirがちゃっかり「C:\php\pear\docs」になってました。
僕の場合「C:\php」なんてディレクトリはないので、このパス指定になってるとこは全部直さないとダメです。

Google先生に直し方を聞いてみると
「C:\xampp\php\go-pear.pharを実行しなさい」ってことだったのでトライ。

C:\xampp\php>php go-pear.phar
Could not open input file: go-pear.phar

そんなファイルねえ。
Windowsからファイル検索してもありませんでした。

仕方ないのでconfig-set で全部直します。

C:\xampp\php>pear config-set doc_dir c:\xampp\php\pear\docs
config-set succeeded
C:\xampp\php>pear config-set cfg_dir c:\xampp\php\pear\cfg
config-set succeeded
C:\xampp\php>pear config-set data_dir c:\xampp\php\pear\data
config-set succeeded
C:\xampp\php>pear config-set temp_dir c:\xampp\php\pear\temp
config-set succeeded
C:\xampp\php>pear config-set test_dir c:\xampp\php\pear\tests
config-set succeeded
C:\xampp\php>pear config-set www_dir c:\xampp\php\pear\www
config-set succeeded

ちゃんと反映されてるか確認

C:\xampp\php>pear config-show
CONFIGURATION (CHANNEL PEAR.PHP.NET):
(略)
PEAR executables directory     bin_dir          C:\xampp\php
PEAR documentation directory   doc_dir          c:\xampp\php\pear\docs
PHP extension directory        ext_dir          C:\xampp\php\ext
PEAR directory                 php_dir          C:\xampp\php\pear
PEAR Installer cache directory cache_dir        R:\Temp\pear\cache
PEAR configuration file        cfg_dir          c:\xampp\php\pear\cfg
directory
PEAR data directory            data_dir         c:\xampp\php\pear\data
PEAR Installer download        download_dir     R:\Temp\pear\download
directory
PHP CLI/CGI binary             php_bin          C:\xampp\php\.\php.exe
php.ini location               php_ini          <not set>
--program-prefix passed to     php_prefix       <not set>
PHP's ./configure
--program-suffix passed to     php_suffix       <not set>
PHP's ./configure
PEAR Installer temp directory  temp_dir         c:\xampp\php\pear\temp
PEAR test directory            test_dir         c:\xampp\php\pear\tests
PEAR www files directory       www_dir          c:\xampp\php\pear\www
(略)

直ったので改めてインストール

C:\xampp\php>pear install XML_Query2XML
WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
Did not download optional dependencies: pear/Net_LDAP2, pear/I18N_UnicodeString, use --alldeps to download automatically
pear/XML_Query2XML can optionally use package "pear/Net_LDAP2"
pear/XML_Query2XML can optionally use package "pear/I18N_UnicodeString"
downloading XML_Query2XML-1.7.2.tgz ...
Starting to download XML_Query2XML-1.7.2.tgz (388,604 bytes)
.....done: 388,604 bytes
install ok: channel://pear.php.net/XML_Query2XML-1.7.2

できた!!!!!!!!!!

今回は以上です。

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
0
読み込み中...
0 票, 平均: 0.00 / 10
2,622
X facebook はてなブックマーク pocket
【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

【2025.6.30 Amazon Linux 2 サポート終了】Amazon Linux サーバー移行ソリューション

この記事をかいた人

About the author