Opened 12 years ago

Closed 10 years ago

Last modified 8 years ago

#3175 closed task (duplicate)

Berkeley DB-5.1.19

Reported by: DJ Lucas Owned by: DJ Lucas
Priority: normal Milestone:
Component: BOOK Version: SVN
Severity: normal Keywords:


New version included sqlite3 compatible implementation based on API Note that db does not install pkgconfig files, so currently it cannot be used as a drop-in replacement for sqlite3 yet. This needs to be added. Also, current xulrunner requires version 3.7.1 of sqlite3 (backport header changes?)

Change History (12)

comment:1 by DJ Lucas, 12 years ago

Owner: changed from blfs-book@… to DJ Lucas
Status: newassigned

comment:2 by DJ Lucas, 12 years ago

Nope, unable to backport _easily_ (well, without making questionable changes). Will add a note about sqlite3 compatibility not being adequate for use by other programs in BLFS.

comment:3 by Randy McMurchy, 12 years ago

Summary: db-5.1.19Berkeley DB-5.1.19

If you add the --enable-jdbc option to build the sqlite.jar file, you should add this sed or the file ends up in non-standard /usr/jar directory:

sed -i 's|prefix/jar|prefix/share/java|' ../dist/configure

There are also a few more files that need to be chowned to root:root. The docdir thing on the install line is still required. I used the following configure command:

../dist/configure --prefix=/usr \
                  --enable-compat185 \
                  --enable-cxx \
                  --enable-java \
                  --enable-sql \
                  --enable-jdbc \
                  --enable-stl \
                  --enable-tcl \

The following chown command seems to catch all the files:

chown -v -R root:root /usr/bin/dbsql \
                      /usr/bin/db_* \
                      /usr/include/db{,_185,_cxx,stl_*}.h \
                      /usr/lib/libdb{{,_cxx,_sql,_tcl,_stl}.a,{,_cxx,_java,_tcl,_sql,_stl}-5.1.{so,a,la}} \

comment:4 by Randy McMurchy, 12 years ago

The chown command has one line that looks to be too long, also it has some of my custom script stuff in it. Perhaps this would be better:

chown -v -R root:root                                        \
    /usr/bin/{dbsql,db_*}                                    \
    /usr/include/db{,_185,_cxx,stl_*}.h                      \
    /usr/lib/libdb{,_cxx,_sql,_tcl,_stl}.a                   \
    /usr/lib/libdb{,_cxx,_sql,_tcl,_stl,_java}-5.1.{so,a,la} \

comment:5 by Randy McMurchy, 12 years ago

Cyrus-SASL will need to be patched for this version of BDB. Build fails with

gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../include -I/usr/include/mysql -I/usr/include -Wall -W -g -O2 -MT db_berkeley.lo -MD -MP -MF .deps/db_berkeley.Tpo -c db_berkeley.c  -fPIC -DPIC -o db_berkeley.lo
db_berkeley.c: In function 'berkeleydb_open':
db_berkeley.c:106:2: warning: passing argument 2 of '(*mbdb)->open' from incompatible pointer type
db_berkeley.c:106:2: note: expected 'struct DB_TXN *' but argument is of type 'const char *'
db_berkeley.c:106:2: warning: passing argument 4 of '(*mbdb)->open' makes pointer from integer without a cast
db_berkeley.c:106:2: note: expected 'const char *' but argument is of type 'int'
db_berkeley.c:106:2: error: too few arguments to function '(*mbdb)->open'
make[2]: *** [db_berkeley.lo] Error 1

comment:6 by Randy McMurchy, 12 years ago

The patch in this bug report allows SASL to build. I do not know if it actually allows proper access to BDB.

comment:7 by Randy McMurchy, 12 years ago

Milestone: future6.7

Updated milestone to 6.7

comment:8 by DJ Lucas, 12 years ago

We'll need to explicitly add --enable-dbm to the configure line now as well.

root [ /lfs-source-archive/Linux-PAM-1.1.3 ]# nm /usr/lib/ | grep dbm_open root [ /lfs-source-archive/Linux-PAM-1.1.3 ]#

I used:

uudecode="no" ../dist/configure --prefix=/usr \
                  --enable-compat185 \
                  --enable-cxx \
                  --enable-java \
                  --enable-tcl \
                  --enable-sql \
                  --with-tcl=/usr/lib &&

comment:9 by DJ Lucas, 12 years ago

with is like so:

root [ /lfs-source-archive ]# nm /usr/lib/ | grep dbm_open
000c8fd0 T __db_ndbm_open
root [ /lfs-source-archive ]#

comment:10 by Randy McMurchy, 12 years ago

Just now seeing this and I made a change to the Heimdal instructions to account for the fact that I did *NOT* add this parameter to BDB. I think this version of BDB is ready for prime time. I've built many packages that actually create a BDB database and they all have performed as expected.

Let's do it. I'm ready to say the same thing about Python-2.7 but I have not tested enough of the old GNOME stuff. Everything else I've build uses Python-2.7 as expected.

comment:11 by DJ Lucas, 10 years ago

Resolution: duplicate
Status: assignedclosed

Berkeley DB has been updated to 5.2.x in the book.

comment:12 by bdubbs@…, 8 years ago

Milestone: 6.7

Milestone 6.7 deleted

Note: See TracTickets for help on using tickets.