Bug#388601: [php-maint] Bug#388601: dba_open from php 5.1.6, testing fails with Driver initialization failed for handler: db4: Unknown, error 140682440

sean finney seanius at debian.org
Mon Oct 2 15:34:34 UTC 2006


hi mircea,

finally getting some time to sit down with this one...

On Mon, 2006-09-25 at 11:14 +0300, Mircea Negreanu wrote:
> 
> In conclusion:
> - if php is built with libdb4.4-dev then it will fail, otherwise not.

thanks for looking into this in such great detail.  i believe i've found
the problem.  i'll include some information here in case you feel like
forwarding this on, in the meantime i'll see about fixing it locally.

it seems that the cause is this chunk of code in ./configure:

  for LIB in db-4.3 db-4.2 db-4.1 db-4.0 db-4 db4 db; do
    if test -f $THIS_PREFIX/$PHP_LIBDIR/lib$LIB.a || test -f
$THIS_PREFIX/$PHP_LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then

  old_LDFLAGS=$LDFLAGS
  LDFLAGS="-L$THIS_PREFIX/$PHP_LIBDIR $LDFLAGS"
  old_LIBS=$LIBS
  LIBS="-l$LIB $LIBS"

which i believe is defined in some m4 goo in ./ext/dba/config.m4.

looking at this code, it seems that even if we provide the development
headers for db4.4 (which would show up as libdb-4.4.a as well as
libdb-4.4.so and libdb.so), it sees the libdb-4.3 shared libraries
first.  because there's a whole bunch of other stuff on the system that
requires libdb-4.3, we can't do much to prevent it from being there.

(/me goes and hacks a little)

yes, that seems to be it.  if i add db-4.4 to the list of libraries
to check, the Makefiles get generated with the right EXTRA_LIBS flags.

so i'll try patching the m4 and building some packages, and if they work
i'll upload them.  i'd appreciate it if you could verify with the php
folks in your bug report that this is indeed the problem, as well as the
appropriate fix.


thanks,
	sean
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : http://lists.alioth.debian.org/pipermail/pkg-php-maint/attachments/20061002/1e55fc65/attachment.pgp


More information about the pkg-php-maint mailing list