SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

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

関連するメモ

コメント