CentOS 5(64bit)でphp5.3.1をコンパイルした(ライブラリ不足対応)
きっとマニュアルなどにはちゃんと書いてあるのだろう。
しかし実際は、やってみて、問題が発生して、調べて、ようやく理解の繰り返し。
以下、本題。
問題
64bit環境でphp5.3をコンパイルしたのですが、「ライブラリがないない」言われるんです。
configure: error: libjpeg.(a|so) not found.
とか
configure: error: libpng.(a|so) not found.
とか
configure: error: xml2-config not found. Please check your libxml2 installation.
とか。
*.i386 のパッケージをインストールしたら出なくなるのだが、何か間違っている。
ここは64bit環境。*.x86_64 のライブラリがあればいいはずなのだ。
よーく考えると、CentOS(RedHatも) /usr/lib というディレクトリと /usr/lib64 があって、64bit版ライブラリは lib64 に入っている。
中を見ると、ちゃんと libjpeg や libpng や libxml2 が入っている。
そうだ、 /usr/lib64 を見ないで、/usr/lib を見てしまっているに違いない。
答え
--with-libdir=lib64
./configure –help より
–with-libdir=NAME Look for libraries in …/NAME rather than …/lib
(/lib よりも /NAME を見ますよ)
参考までに、ある環境の configure option
./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info --cache-file=../config.cache --with-libdir=lib64 --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --disable-debug --with-pic --disable-rpath --without-pear --with-bz2 --with-curl --with-exec-dir=/usr/bin --with-freetype-dir=/usr --with-png-dir=/usr --enable-gd-native-ttf --without-gdbm --with-gettext --with-gmp --with-iconv --with-jpeg-dir=/usr --with-openssl --with-png --with-pspell --with-expat-dir=/usr --with-pcre-regex=/usr --with-zlib --with-layout=GNU --enable-exif --enable-ftp --enable-magic-quotes --enable-sockets --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-track-vars --enable-trans-sid --enable-yp --enable-wddx --with-kerberos --enable-ucd-snmp-hack --with-unixODBC=shared,/usr --enable-memory-limit --enable-shmop --enable-calendar --enable-dbx --enable-dio --with-mime-magic=/usr/share/file/magic.mime --without-sqlite --with-libxml-dir=/usr --with-xml --with-system-tzdata --enable-force-cgi-redirect --enable-pcntl --with-imap=shared --with-imap-ssl --enable-mbstring=shared --enable-mbstr-enc-trans --enable-mbregex --with-ncurses=shared --with-gd=shared --enable-bcmath=shared --enable-dba=shared --with-db4=/usr --with-xmlrpc=shared --with-ldap=shared --with-ldap-sasl --with-mysql=shared,/usr --with-mysqli=shared,/usr/bin/mysql_config --enable-dom=shared --with-dom-xslt=/usr --with-dom-exslt=/usr --with-pgsql=shared --with-snmp=shared,/usr --enable-soap=shared --with-xsl=shared,/usr --enable-xmlreader=shared --enable-xmlwriter=shared --enable-fastcgi --enable-pdo=shared --with-pdo-odbc=shared,unixODBC,/usr --with-pdo-mysql=shared,/usr --with-pdo-pgsql=shared,/usr --with-pdo-sqlite=shared,/usr --enable-dbase=shared
コメント