256bitの殺人メニュー

インフラエンジニアだったソリューションアーキテクトなくわののブログ。こちらのBlogは個人の意見となっていて会社とは全く関係ありません。お約束です。[twitter:@kuwa_tw]めんどくさがりが重い腰を上げて何かをアウトプットすることにどれほどの意味があるのかを試してみたいブログでもある。

64bitカーネルのLinuxにPHP4を入れる場合。

そんな事はあんまりないとは思いますが。


configureした時に

configure: error: libjpeg.(a|so) not found.

って出ます。

./configure \
--with-apxs=/usr/local/apache/bin/apxs \
--with-jpeg-dir=/usr/lib64 \
--with-png-dir=/usr/lib64 \
--with-zlib \
--with-gd \
--enable-mbstring \
--enable-mbregex \

とか指定してるのに、なんでかなぁーってconfigure見てたら

    for i in $withval /usr/local /usr; do
      if test -f "$i/lib/libjpeg.$SHLIB_SUFFIX_NAME" -o -f "$i/lib/libjpeg.a"; then
        CPDF_JPEG_DIR=$i
        break;
      fi
    done
    if test -z "$CPDF_JPEG_DIR"; then
      { echo "configure: error: libjpeg.(a|so) not found." 1>&2; exit 1; }
    fi

めっちゃハードコードされとる。。。


と言う事でとりあえず、

$ diff configure.org configure
33554c33554
<       test -f $i/lib/libjpeg.$SHLIB_SUFFIX_NAME -o -f $i/lib/libjpeg.a && GD_JPEG_DIR=$i && break
---
>       test -f /usr/lib64/libjpeg.$SHLIB_SUFFIX_NAME -o -f /usr/lib64/libjpeg.a && GD_JPEG_DIR=$i && break
33828,33829c33828,33829
<     for i in $PHP_PNG_DIR /usr/local /usr; do
<       test -f $i/lib/libpng.$SHLIB_SUFFIX_NAME -o -f $i/lib/libpng.a && GD_PNG_DIR=$i && break
---
>     for i in $PHP_PNG_DIR /usr; do
>       test -f /usr/lib64/libpng.$SHLIB_SUFFIX_NAME -o -f /usr/lib64/libpng.a && GD_PNG_DIR=$i && break
33840c33840
<     if test ! -f $GD_PNG_DIR/include/png.h; then
---
>     if test ! -f /usr/include/png.h; then

とか適当に、、、って酷いなw*1
もうPHP4とかメンテされてないんだろうなぁ、、、。

*1:まあ通ったからいいか、、、。