- Berkeley DB Reference Guide:
- Building Berkeley DB for UNIX systems
|
|
Configuring Berkeley DB
There are several options that you can specify when configuring Berkeley DB.
Although only the Berkeley DB-specific ones are described here, most of the
standard GNU autoconf options are available and supported. To see a
complete list of the options, specify the --help flag to the configure
program.
The Berkeley DB specific options are as follows:
- --enable-compat185
- To compile or load Berkeley DB 1.85 applications against this release of the
Berkeley DB library, enter --enable-compat185 as an argument to configure.
This will include Berkeley DB 1.85 API compatibility code in the library.
- --enable-cxx
- To build the Berkeley DB C++ API, enter --enable-cxx as an argument to
configure.
- --enable-debug
- To build Berkeley DB with -g as a compiler flag and with DEBUG
#defined during compilation, enter --enable-debug as an argument to
configure. This will create a Berkeley DB library with debugging symbols, as
well as load various routines that can be called from a debugger to
display pages, cursor queues, and so forth. This option should not be
specified when configuring to build production binaries.
- --enable-debug_rop
- To build Berkeley DB to output log records for read operations, enter
--enable-debug_rop as an argument to configure. This option should not
be specified when configuring to build production binaries.
- --enable-debug_wop
- To build Berkeley DB to output log records for write operations, enter
--enable-debug_wop as an argument to configure. This option should not
be specified when configuring to build production binaries.
- --enable-diagnostic
- To build Berkeley DB with run-time debugging checks, enter --enable-diagnostic
as an argument to configure. This will cause a number of special checks
to be performed when Berkeley DB is running. Applications built using this
option should not share database environments with applications built
without this option. This option should not be specified when
configuring to build production binaries.
- --enable-dump185
- To convert Berkeley DB 1.85 (or earlier) databases to this release of Berkeley DB,
enter --enable-dump185 as an argument to configure. This will build the
db_dump185 utility, which can dump Berkeley DB 1.85 and 1.86 databases
in a format readable by the Berkeley DB db_load utility.
The system libraries with which you are loading the db_dump185
utility must already contain the Berkeley DB 1.85 library routines for this
to work because the Berkeley DB distribution does not include them. If you
are using a non-standard library for the Berkeley DB 1.85 library routines,
you will have to change the Makefile that the configuration step creates
to load the db_dump185 utility with that library.
- --enable-java
- To build the Berkeley DB Java API, enter --enable-java as an argument to
configure. To build Java, you must also build with shared libraries.
Before configuring, you must set your PATH environment variable to
include javac. Note that it is not sufficient to include a symbolic
link to javac in your PATH because the configuration process uses the
location of javac to determine the location of the Java include files
(for example, jni.h). On some systems, additional include directories
may be needed to process jni.h; see Changing compile or
load options for more information.
- --disable-largefile
- Some systems, notably versions of HP/UX and Solaris, require special
compile-time options in order to create files larger than 2^32 bytes.
These options are automatically enabled when Berkeley DB is compiled. For
this reason, binaries built on current versions of these systems may
not run on earlier versions of the system because the library and system
calls necessary for large files are not available. To disable building
with these compile-time options, enter --disable-largefile as an argument
to configure.
- --enable-posixmutexes
- To force Berkeley DB to use the POSIX pthread mutex interfaces for underlying
mutex support, enter --enable-posixmutexes as an argument to configure.
The Berkeley DB library requires that the POSIX pthread implementation support
mutexes shared between multiple processes, as described for the
pthread_condattr_setpshared and pthread_mutexattr_setpshared interfaces.
In addition, this configuration option requires that Berkeley DB be linked
with the -lpthread library. On systems where POSIX mutexes are the
preferred mutex support (for example, HP-UX), they will be selected
automatically.
- --enable-rpc
- To build the Berkeley DB RPC client code and server utility, enter --enable-rpc
as an argument to configure. The --enable-rpc option requires that RPC
libraries already be installed on your system.
- --disable-shared, --disable-static
- On systems supporting shared libraries, Berkeley DB builds both static and
shared libraries by default. (Shared libraries are built using
the GNU
Project's Libtool distribution, which supports shared library builds
on many (although not all) systems.) To not build shared libraries,
configure using the --disable-shared option. To not build static
libraries, configure using the --disable-static option.
- --enable-tcl
- To build the Berkeley DB Tcl API, enter --enable-tcl as an argument to
configure. This configuration option expects to find Tcl's tclConfig.sh
file in the /usr/local/lib directory. See the --with-tcl
option for instructions on specifying a non-standard location for the
Tcl installation. See Loading Berkeley DB
with Tcl for information on sites from which you can download Tcl and
which Tcl versions are compatible with Berkeley DB. To build Tcl, you must
also build with shared libraries.
- --enable-test
- To build the Berkeley DB test suite, enter --enable-test as an argument to
configure. To run the Berkeley DB test suite, you must also build the Tcl
API. This option should not be specified when configuring to build
production binaries.
- --enable-uimutexes
- To force Berkeley DB to use the UNIX International (UI) mutex interfaces for
underlying mutex support, enter --enable-uimutexes as an argument to
configure. This configuration option requires that Berkeley DB be linked with
the -lthread library. On systems where UI mutexes are the preferred
mutex support, (for example, SCO's UnixWare 2), they will be selected
automatically.
- --enable-umrw
- Rational Software's Purify product and other run-time tools complain
about uninitialized reads/writes of structure fields whose only purpose
is padding, as well as when heap memory that was never initialized is
written to disk. Specify the --enable-umrw option during configuration
to mask these errors. This option should not be specified when
configuring to build production binaries.
- --with-embedix=DIR
- To build Berkeley DB for Embedix, configure with --with-embedix=DIR, where
DIR is the directory in which Embedix is installed. If "=DIR" is not
specified, a default installation directory of /opt/Embedix is
used. This configuration option creates an Embedix Component Descriptor
file (ECD) for Berkeley DB. To configure for Embedix, you must also specify
the --with-rpm option.
- --with-rpm=DIR
- To build Berkeley DB as an RPM software package, configure with --with-rpm=DIR,
where DIR is the directory in which the gzipped tar archive file of the
distribution may be found. This configuration option will create an
RPM specification file from which the RPM software package can be built,
using the "make" command.
- --with-tcl=DIR
- To build the Berkeley DB Tcl API, enter --with-tcl=DIR, replacing DIR with
the directory in which the Tcl tclConfig.sh file may be found. See
Loading Berkeley DB with Tcl for information
on sites from which you can download Tcl and which Tcl versions are
compatible with Berkeley DB. To build Tcl, you must also build with shared
libraries.
- --with-uniquename=NAME
- To build Berkeley DB with unique symbol names (in order to avoid conflicts
with other application modules or libraries), enter --with-uniquename=NAME,
replacing NAME with a string that to be appended to every Berkeley DB symbol.
If "=NAME" is not specified, a default value of "_MAJORMINOR" is used,
where MAJORMINOR is the major and minor release numbers of the Berkeley DB
release. See Building with
multiple versions of Berkeley DB for more information.
Copyright Sleepycat Software