Fedora 7 (FC7) にphp4を入れたい、そんなとき(x86_64版)

さっそくインストールしましょう。
ターゲットはFC7のx86_64。デュアルコア(make -j2)。
make -j2にするととってもコンパイルが早いです。
ぜひ、デュアルコアつえー、を感じて下さい。
もしリクエストあれば、シングルコアのi386版も書きます。(書いてみた

◇インストール(x86_64)

wget http://jp.php.net/distributions/php-4.4.7.tar.bz2
tar jxvf php-4.4.7.tar.bz2
cd php-4.4.7

# x86_64版mysqlライブラリ(/usr/lib64/mysql)を参照するように
# configureする。但しその結果余分な文字列も追加される。
# あと、soapとgettextは使わないなら除いてください。
LIBS="-L/usr/lib64/mysql" \\
./configure\\
 --prefix=/usr/local\\
 --enable-mbstring\\
 --enable-mbstr-enc-trans\\
 --enable-mbregex\\
 --enable-zend-multibyte\\
 --with-mysql=/usr\\
 --with-apxs2=/usr/sbin/apxs\\
 --with-iconv\\
 --enable-soap\\
 --with-gettext

# LIBS="-L/usr/lib64/mysql" により追加される余計な文字列を削除
find . -print -exec \\
perl -i -pe 's|/usr/lib64/mysql||g' '{}' ';'

# 残っている/usr/lib/mysql を /usr/lib64/mysql に置換する。
# コンパイル時にx86_64版のmysqlライブラリとリンクするため。
find . -print -exec \\
perl -i -pe 's|/usr/lib/mysql|/usr/lib64/mysql|g' '{}' ';'

make -j2
make install
cd ..
rm -rf php-4.4.7

# httpd.conf に追加されるエントリを削除
perl -i -pe 's|^.*php4_module.*\\n$||g' /etc/httpd/conf/httpd.conf

# httpd.conf に読み込まれるphp4モジュール用のファイルを作成
cat > /etc/httpd/conf.d/php4.conf << EOF
LoadModule php4_module /usr/lib64/httpd/modules/libphp4.so
AddType application/x-httpd-php .php
DirectoryIndex index.php
EOF

# php5モジュール が読み込まれないようにファイル名を変更
mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php5.conf-disabled
/etc/rc.d/init.d/httpd restart

◇動作確認
phpinfoでmysqlセクションがこうなっていたらOK

MYSQL_MODULE_TYPE external
MYSQL_SOCKET /var/lib/mysql/mysql.sock
MYSQL_INCLUDE -I/usr/include/mysql
MYSQL_LIBS -L/usr/lib64/mysql -lmysqlclient

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>