Bug #5418 Updated: Bug in detection of dbm causes conflict with Sybase dbopen()

From: Date: Mon, 14 May 2001 16:45:19 +0000
Subject: Bug #5418 Updated: Bug in detection of dbm causes conflict with Sybase dbopen()
Groups: php.dev 
Request: Send a blank email to php-dev+get-55194@lists.php.net to get a copy of this message
ID: 5418 Updated by: joey Reported By: dean.bennett@home.com Status: Feedback Bug Type: Sybase (dblib) related Operating system: PHP Version: 4.0.1pl2 Assigned To: Comments: There are 2 seperate bugs here: 1) The configure issue (IE, order of 'db' libs) and 2) The conflict with Sybase's dbopen(). The second may have been solved (IIUC)by /ext/sybase/php_sybase_db.c 1.14. This was committed right after 4.0.5, so it should be in snaps and in 4.0.6. I think Dan has a suggestion on #1 that he said he would forward on to you. Please let us know if either (or both) of these solve this one, Dean. Previous Comments: --------------------------------------------------------------------------- [2001-05-14 12:37:52] kalowsky@php.net attempted at a patch, sent to user. awaiting a response. --------------------------------------------------------------------------- [2000-07-28 11:24:36] waldschrott@php.net checking out --------------------------------------------------------------------------- [2000-07-27 23:59:19] dean.bennett@home.com Yes it is. The fix would be to change the order of the AC_CHECK_LIB's in ext/db/config.m4. I think that the order should be gdbm, c, dbm, db. As someone else reported, there is also no way to disable linking against dbm. --------------------------------------------------------------------------- [2000-07-27 22:13:15] waldschrott@php.net Please verify that it´s still happening using the latest version from CVS or snaps.php.net. --------------------------------------------------------------------------- [2000-07-06 22:31:28] dean.bennett@home.com The configure script checks for dbm by linking a conftest.c program with a dbm_open call against -lgdbm, then -ldb, then -lc and finally -ldbm. On Digital Unix, the link succeeds against -ldb, because there is a /usr/lib/libdb.a, but dbm_open is really in libc (and also in libdbm.a) and not in libdb. This causes a problem when you try to build --with-sybase, as the sybase dbopen() function is superceeded by the dbopen() in libdb.a. The -ldb is before -lsybdb in the link command. Configure should not be picking -ldb as the DBM_LIB value, as that is not the location of dbm_open. If I install gdbm, it works fine, as it checks for that library first. --------------------------------------------------------------------------- The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online. ATTENTION! Do NOT reply to this email! To reply, use the web interface found at http://bugs.php.net/?id=5418&edit=2

« previous php.dev (#55194) next »