ports/116783: php_db4 can not be built
Jacobus Geluk
Jacobus.Geluk at gmail.com
Mon Oct 1 12:20:01 UTC 2007
>Number: 116783
>Category: ports
>Synopsis: php_db4 can not be built
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Mon Oct 01 12:20:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Jacobus Geluk
>Release: 6.2-STABLE
>Organization:
>Environment:
FreeBSD *** 6.2-STABLE FreeBSD 6.2-STABLE #0: Mon Jul 23 00:51:09 UTC 2007 ***:/usr/obj/usr/src/sys/SMP amd64
>Description:
The following does not work:
cd /usr/ports/databases/db46/work/db-4.6.19/php_db4
phpize
./configure
make
The make stops with an error because the include path has not been set correctly, it can't find db.h in the /usr/local/include/db46 directory or the db_cxx library in the /usr/local/lib/db46 directory...
/usr/local/bin/bash /usr/ports/databases/db46/work/db-4.6.19/php_db4/libtool --mode=compile g++ -I. -I/usr/ports/databases/db46/work/db-4.6.19/php_db4 -DPHP_ATOM_INC -I/usr/ports/databases/db46/work/db-4.6.19/php_db4/include -I/usr/ports/databases/db46/work/db-4.6.19/php_db4/main -I/usr/ports/databases/db46/work/db-4.6.19/php_db4 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp -o db4.lo
mkdir .libs
g++ -I. -I/usr/ports/databases/db46/work/db-4.6.19/php_db4 -DPHP_ATOM_INC -I/usr/ports/databases/db46/work/db-4.6.19/php_db4/include -I/usr/ports/databases/db46/work/db-4.6.19/php_db4/main -I/usr/ports/databases/db46/work/db-4.6.19/php_db4 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp -fPIC -DPIC -o .libs/db4.o
In file included from /usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:18:
/usr/ports/databases/db46/work/db-4.6.19/php_db4/php_db4.h:32: error: expected constructor, destructor, or type conversion before '*' token
/usr/ports/databases/db46/work/db-4.6.19/php_db4/php_db4.h:34: error: expected unqualified-id before numeric constant
/usr/ports/databases/db46/work/db-4.6.19/php_db4/php_db4.h:35: error: expected constructor, destructor, or type conversion before '*' token
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:23:20: db_cxx.h: No such file or directory
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:47: error: expected unqualified-id before numeric constant
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:53: error: ISO C++ forbids declaration of `DBC' with no type
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:53: error: expected `;' before '*' token
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:64: error: ISO C++ forbids declaration of `DB_ENV' with no type
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:64: error: expected `;' before '*' token
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp: In function `void _free_php_db_txn(zend_rsrc_list_entry*)':
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:72: error: 'struct php_DB_TXN' has no member named 'db_txn'
/usr/ports/databases/db46/work/db-4.6.19/php_db4/db4.cpp:72: error: 'struct php_DB_TXN' has no member named 'db_txn'
continues....
>How-To-Repeat:
See description
>Fix:
Patch php_db4/config.m4 to select the right include and lib directories
Patch attached with submission follows:
--- ../php_db4/config.m4.orig 2007-10-01 13:46:47.000000000 +0200
+++ ../php_db4/config.m4 2007-10-01 13:48:06.000000000 +0200
@@ -19,36 +19,8 @@
if test "$PHP_DB4" != "no"; then
if test "$PHP_DB4" != "no"; then
- for i in $PHP_DB4 /usr/local/BerkeleyDB.4.4 /usr/local /usr; do
- if test -f "$i/db4/db.h"; then
- THIS_PREFIX=$i
- INC_DIR=$i/db4
- THIS_INCLUDE=$i/db4/db.h
- break
- elif test -f "$i/include/db4/db.h"; then
- THIS_PREFIX=$i
- INC_DIR=$i/include/db4
- THIS_INCLUDE=$i/include/db4/db.h
- break
- elif test -f "$i/include/db/db4.h"; then
- THIS_PREFIX=$i
- INC_DIR=$i/include/db4
- THIS_INCLUDE=$i/include/db/db4.h
- break
- elif test -f "$i/include/db4.h"; then
- THIS_PREFIX=$i
- INC_DIR=$i/include
- THIS_INCLUDE=$i/include/db4.h
- break
- elif test -f "$i/include/db.h"; then
- THIS_PREFIX=$i
- INC_DIR=$i/include
- THIS_INCLUDE=$i/include/db.h
- break
- fi
- done
- PHP_ADD_INCLUDE($INC_DIR)
- PHP_ADD_LIBRARY_WITH_PATH(db_cxx, $THIS_PREFIX/lib, DB4_SHARED_LIBADD)
+ PHP_ADD_INCLUDE(/usr/local/include/db46)
+ PHP_ADD_LIBRARY_WITH_PATH(db_cxx, /usr/local/lib/db46, DB4_SHARED_LIBADD)
fi
AC_MSG_CHECKING([if we really need to link against mod_db4])
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list