自宅がiDC?

自宅がiDC?

自宅に普通のPCを置いてレンタルサーバ?いえ、iDCです。

自宅がiDC? RSS Feed
 
 
 
 

phpのモジュール追加手順

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

cho氏からリモートハンドの要請があったので対応してみた。

cho氏はWoredPressを使用されていて、phpのモジュールが足りなかった
ようなのでエラーが出るとの報告がありました。
エラー内容は


Fatal error: Call to undefined function: curl_init()

と、出るとのことなのでモジュール不足かなと思い追加を。
ってphpはよく知らないのでググりながらモジュール追加作業を。

apacheのモジュール追加と感覚的には似てるみたい。
あっ!cho氏の環境はphpをソースからインストールしています。
インストール先は「/opt/php-5.2.x」にしていて
phpのソースは「/usr/local/src」にしています。

では、php5.2.xにcurlモジュールを追加するには以下の手順です。


# /usr/local/src/php-5.2.9/ext/curl
# /opt/php/bin/phpize
# ./configure --with-php-config=/opt/php/bin/php-config
# make && make install && echo $?
# cp -p /usr/local/lib/php.ini /usr/local/lib/php.ini.20090708
# vi /usr/local/lib/php.ini
-------------------------------------------------
※下記追記
extension_dir = "/opt/php/include/php/ext/, /opt/php/lib/php/extensions/"
extension=curl.so
-------------------------------------------------
>>以下のディレクトリにコピーした方がいいかも?
# cp -p /usr/local/src/php-5.2.9/ext/curl/modules/curl.so /opt/php/lib/php/extensions/
>>モジュール追加されているか確認
# php -m

最後のコマンドで目的のモジュールが追加されていればOK。

ってかphpizeコマンドってなんだよとか思いながら実行。
低レベルなビルドツールらしいですが。。。

なんか自分でいろいろ勉強するのもいいんですが
やっぱり要望とか要請とか受けると、必死になりますね。
自分じゃ出会えないナレッジに行き当たる感じ。

※追記
結局モジュールを後から追加してもエラーは相変わらず出ると
ご報告があったので、こんな感じでphpを再度コンパイルし直し。

bzip2 -dc php-5.2.9.tar.bz2 | tar xvf - && \
cd php-5.2.9 && \
./configure \
--prefix=/opt/php-5.2.9 \
--with-apxs2=/opt/httpd/bin/apxs \
--enable-mbstring \
--with-mysql=/usr/local/mysql \
--with-gettext=/usr/lib/ \
--with-curl=/usr/include/curl \
&& make \
&& make install \
&& echo $?

cho氏の環境だとlibcurlは既にインストール済みだったので
configureオプションに–with-curl=/usr/include/curlを追記して再コンパイル。

結果エラーはなくなりましたと。なんか気持ち悪いなぁ。

Comments are closed.

Additional comments powered by BackType

TopHatenar

あわせて読みたいブログパーツ