#23606 [Ver->Csd]: Unable to build --with-db4 (db4.1.25)
| From: | helly@php.net | Date: | Wed, 14 May 2003 06:28:03 +0000 |
| Subject: | #23606 [Ver->Csd]: Unable to build --with-db4 (db4.1.25) | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-39606@lists.php.net to get a copy of this message | ||
ID: 23606
Updated by: helly@php.net
Reported By: tommi dot komulainen at iki dot fi
-Status: Verified
+Status: Closed
Bug Type: Compile Failure
PHP Version: 4.3.2RC2
Assigned To: helly
New Comment:
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2003-05-13 16:04:45] helly@php.net
First thanks for directing me to an error.
Second please keep my code inside it's there for a reason
and then make up a new patch. But i'm on it.
------------------------------------------------------------------------
[2003-05-13 08:34:49] tommi dot komulainen at iki dot fi
The configure script is unable to find the db4 in the system, because
it isn't
taking into account #defines such as the following in
/usr/include/db.h:
#define db_create db_create_4001
The library does not contain unversioned symbols and therefore the
configure
script needs to #include the db.h to be able to make proper checks for
the
versioned symbols.
Replacing the AC_CHECK_LIB with somewhat similar AC_TRY_LINK should do
the
trick. See the following patch (I've only tried it with db4.1, I don't
know if
the function signature is the same for older versions, but I'd think
so.)
--- ext/dba/config.m4.orig 2003-04-14 00:05:41.000000000 +0300
+++ ext/dba/config.m4 2003-05-13 16:15:37.000000000 +0300
@@ -136,17 +136,19 @@
AC_DEFUN(PHP_DBA_DB_CHECK,[
for LIB in $2; do
if test -f $THIS_PREFIX/lib/lib$LIB.a -o -f
$THIS_PREFIX/lib/lib$LIB.$SHLIB_SUFFIX_NAME; then
- PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/lib,[
- AC_CHECK_LIB($LIB, $3, [
- AC_EGREP_CPP(yes,[
+ PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/lib -l$LIB,[
+ AC_MSG_CHECKING(db_create in $LIB)
+ AC_TRY_LINK([
#include "$THIS_INCLUDE"
- yes
-#endif
- ],[
- THIS_LIBS=$LIB
- break
- ])
- ])
+ ],[
+(void)db_create((DB**)0, (DB_ENV*)0, 0);
+ ],[
+ AC_MSG_RESULT(yes)
+ THIS_LIBS=$LIB
+ break
+ ],[
+ AC_MSG_RESULT(no)
+ ])
])
fi
done
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=23606&edit=1