php-install | 2004032

[PHP-INSTALL] configure fails while checking for db3 major version From: Carsten P. Gehrke (Carsten <email protected>)
Date: 03/17/04

I sent this about a week ago, and received no response at all. Perhaps
someone on this list could direct me to the proper community, if this is
not the correct one. Thank you!

I have a problem trying to configure PHP 4.3.4 on a Red Hat Linux v7.0
system. The configure command is:

./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
   --mandir=/usr/share/man --infodir=/usr/share/info
   --with-config-file-path=/etc --enable-force-cgi-redirect
   --enable-discard-path --with-layout=GNU --enable-safe-mode
   --with-exec-dir=/usr/bin --enable-magic-quotes --disable-rpath
   --enable-versioning --with-openssl --with-zlib --enable-bcmath --with-bz2
   --enable-calendar --enable-dba --with-db3 --enable-dio --enable-ftp
   --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-ttf
   --enable-gd-native-ttf --with-gettext --with-gmp --with-iconv
   --with-imap=shared --with-kerberos=/usr/kerberos --with-imap-ssl
   --with-ldap=shared --with-mysql=shared,/usr --with-ncurses
   --with-unixODBC=shared --with-pspell --with-pgsql=shared --with-readline
   --enable-shmop --with-snmp=shared,/usr --enable-ucd-snmp-hack
   --enable-sockets --with-regex=system --enable-sysvsem --enable-sysvshm
   --enable-wddx --enable-yp --enable-memory-limit

The last few lines before the configure command dies are:

checking whether to enable DBA... yes
checking for GDBM support... no
checking for NDBM support... no
checking for Berkeley DB4 support... no
checking for db3 major version... configure: error: Header contains
different version

This is from the config.log file:

configure:22414: checking whether to enable DBA
configure:22740: checking for GDBM support
configure:23045: checking for NDBM support
configure:23344: checking for Berkeley DB4 support
configure:23431: gcc -o conftest -g -O2 -L/lib -ldb-3.1 conftest.c -lbz2
-lz -lssl -lcrypto -lresolv -lm -ldl -lnsl 1>&5
configure:23422:10: empty file name in #include
configure: failed program was:
#line 23420 "configure"
#include "confdefs.h"
#include ""
int main() {
           (void)db_create((DB**)0, (DB_ENV*)0, 0);
; return 0; }
configure:23467: checking for db3 major version

And this is code I found in the configure script itself:

   if test -z "$THIS_LIBS"; then
         echo $ac_n "checking for db3 major version""... $ac_c" 1>&6
echo "configure:23467: checking for db3 major version" >&5
     { echo "configure: error: Header contains different version" 1>&2; exit
1; }
   fi

Note that $THIS_LIBS is an empty string; it was used in the empty #include
"" statement shown in the log. Perhaps I am missing something, but this
code doesn't make much sense to me. As I interpret it, first a check is
done if the variable $THIS_LIBS is empty. If that is the case, then the
two messages about checking for db3 major version are emitted, and then the
error message, followed by the exit 1. That last part doesn't make much
sense to me: The checking does not seem to happen, and the script will
exit regardless of the db3 major version. Is this the intention? Am I
missing something, maybe a side effect of emitting the $ac_n or
$ac_c? BTW, db3-3.1.14-6 is installed on this system, along with
db2-2.4.14-4 and db1-1.85-4.

Thanks in advance,
Carsten