After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 370349 - Build fails with Berkeley DB 4.2.52
Build fails with Berkeley DB 4.2.52
Status: RESOLVED FIXED
Product: libgda
Classification: Other
Component: general
1.99.x
Other All
: Normal normal
: ---
Assigned To: malerba
gnome-db Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-11-04 05:54 UTC by Mark Johnson
Modified: 2009-01-31 01:32 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Mark Johnson 2006-11-04 05:54:25 UTC
Please describe the problem:
I am using Slackware 10.2.
When compiling libgda, the configure succeeds and indicates that the Berkeley DB provider will be compiled.
However, the compile breaks while compiling BDB provider.

Here is the last part of the output:
 gcc "-DPACKAGE_NAME=\"GNU Data Access\"" -DPACKAGE_TARNAME=\"libgda\" -DPACKAGE_VERSION=\"1.99.1\" "-DPACKAGE_STRING=\"GNU Data Access 1.99.1\"" -DPACKAGE_BUGREPORT=\"gnome-db-list@gnome.org\" -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN=\"libgda-3\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DYYTEXT_POINTER=1 -DGETTEXT_PACKAGE=\"libgda-3\" -DHAVE_LOCALE_H=1 -DHAVE_LC_MESSAGES=1 -DHAVE_BIND_TEXTDOMAIN_CODESET=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -DENABLE_NLS=1 -DHAVE_ODBC=1 -DHAVE_MYSQL=1 -DHAVE_POSTGRES=1 -DHAVE_POPT_H=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE_HISTORY_H=1 -I. -I. -I../.. -I../.. -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -DLIBGDA_DATA_DIR=\"/usr/share/libgda\" -O2 -march=i486 -mcpu=pentium2 -MT gda-bdb-recordset.lo -MD -MP -MF .deps/gda-bdb-recordset.Tpo -c gda-bdb-recordset.c  -fPIC -DPIC -o .libs/gda-bdb-recordset.o
gda-bdb-recordset.c: In function `gda_bdb_recordset_class_init':
gda-bdb-recordset.c:80: warning: assignment from incompatible pointer type
gda-bdb-recordset.c: In function `gda_bdb_recordset_new':
gda-bdb-recordset.c:247: warning: passing arg 3 of pointer to function makes integer from pointer without a cast
gda-bdb-recordset.c:247: error: too many arguments to function
make[2]: *** [gda-bdb-recordset.lo] Error 1
make[2]: Leaving directory `/mnt/raid/download/computer/software/gnome/libgda/1.99/src/libgda-1.99.1/providers/bdb'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/raid/download/computer/software/gnome/libgda/1.99/src/libgda-1.99.1/providers'
make: *** [all-recursive] Error 1

I cannot find any definition of BDB_VERSION on the command line given.  However, the line given is in a function call where the number of arguments is changed depending upon the value of BDB_VERSION.

I have installed the following packages:
db4-4.2.52-i486-2
db31-3.1.17-i486-1
db3-3.3.11-i486-4
All of them are different versions of Berkeley DB provider.




Steps to reproduce:
1. Extracted libgda 1.99.1 tarball
2. ./configure --prefix=/usr --sysconfdir=/etc --enable-gtk-doc
3. make


Actual results:
Compiling ends with the above error.

Expected results:
Compiling should complete successfully or configure should fail.

Does this happen every time?
I've only tried it once so far, but one expects it to happen the same way.

Other information:
Why is there no Berkeley DB Provider component under libgda?
Comment 1 Murray Cumming 2007-01-23 18:39:28 UTC
Is this a duplicate of bug #162569 ?
Comment 2 Mark Johnson 2007-01-24 03:39:48 UTC
I do not think so, though they are similar.

Here are my reasons:

1. Bug162569 deals with a different part of the libgda code failing to compile.  A different gda-bdb function is involved.

2. Bug162569 incurred its error because of a parameter that was added between DB 4.2.52 and 4.3.21.  I have 4.2.52 installed, and therefore do not have that new parameter.

Because of #2, each bug is caused by a different Berkely DB change.

This still occurs in SVN2800 (trunk).
Comment 3 Murray Cumming 2007-01-30 08:35:07 UTC
So we need to either 
a) #ifdef around that part of the code to adapt to different versions of the Berkeley DB API,
or
b) Require the later version of the API.
Comment 4 malerba 2009-01-28 20:59:20 UTC
This will be done for future versions, current svn trunk compiles with BDB 4.6 and 4.7.

Is anyone still using that version of BDB or can I close the bug?
Comment 5 Mark Johnson 2009-01-31 01:32:44 UTC
I dropped the --without-bdb (and patches) from my build script.  libgda 3.99.9 successfully built.