#40707 [NEW]: checking for db4 major version... Header contains different version
| From: | BLentz at channing-bete dot com | Date: | Sat, 03 Mar 2007 15:49:35 +0000 |
| Subject: | #40707 [NEW]: checking for db4 major version... Header contains different version | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-109828@lists.php.net to get a copy of this message | ||
From: BLentz at channing-bete dot com
Operating system: Multiple Linux
PHP version: 5.2.1
PHP Bug Type: Compile Failure
Bug description: checking for db4 major version... Header contains different version
Description:
------------
Operating systems: Fedora Core 5 and Aurora Linux 2.0 (Fedora Core for
SPARC)
Berkeley DB versions: 4.3.29 and 4.2.52 (respectively)
Header locations: /usr/include/db.h -> /usr/include/db4/db.h
Library locations: /usr/lib/libdb.so -> /lib/libdb-4.[3|2].so
Berkeley DB installation: via RPM, including -devel packages. No other
versions are installed (either via RPM or via source).
PHP_LIBDIR is being incorrectly set by the configure script as "lib64"
seems like a bad default in the absence of a user-configured value.
config.nice contains both:
'--libdir=/usr/lib64' \
and
'--with-libdir=lib64' \
even though they were not set in the ./configure line (below).
The line 27480 test can be compiled by hand using
$THIS_INCLUDE=/usr/include/db.h. However, it segfaults on both systems
when executed.
The line 27495 test can be run through cpp and does successfully return
"yes" (DB_VERSION_MAJOR == 4).
I was ready to blame my operating system installs until I saw this on two
machines/architectures... I don't know where the lib64 is coming from as
it does not appear in the output of libtool --config | grep lib64, and
this system is running in i386 mode, as reported by uname -a.
Reproduce code:
---------------
./configure --host=sparc-unknown-linux-gnu --build=sparc-unknown-linux-gnu
--target=sparc64-redhat-linux --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-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 --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=/etc/httpd/conf/magic --without-sqlite
--with-libxml-dir=/usr --with-xml --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
--with-xmlrpc=shared --with-ldap=shared --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 --with-apxs2=/usr/sbin/apxs
Expected result:
----------------
A usable build of PHP.
If I add --libdir=/usr/lib --with-libdir=lib to the configure line, I can
get one step closer to getting PHP to compile (now I'm getting
"utf8_mime2text() has new signature, but U8T_CANONICAL is missing.";
separate issue, I guess)
Actual result:
--------------
STDOUT:
checking for QDBM support... no
checking for GDBM support... no
checking for NDBM support... no
checking for db4 major version... configure: error: Header contains
different version
config.log:
configure:26767: checking for QDBM support
configure:27102: checking for GDBM support
configure:27423: checking for NDBM support
configure:27528: checking for db4 major version
--
Edit bug report at http://bugs.php.net/?id=40707&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=40707&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=40707&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=40707&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=40707&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=40707&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=40707&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=40707&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=40707&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=40707&r=support
Expected behavior: http://bugs.php.net/fix.php?id=40707&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=40707&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=40707&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=40707&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=40707&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=40707&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=40707&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=40707&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=40707&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=40707&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=40707&r=mysqlcfg