Compile-time configuration
There are three compile-time configuration options that assist in
debugging Berkeley DB and Berkeley DB applications:
-
--enable-debug
- If you want to build Berkeley DB with -g as the C and C++ compiler
flag, enter --enable-debug as an argument to configure. This will create
Berkeley DB with debugging symbols, as well as load various Berkeley DB routines
that can be called directly from a debugger to display database page
content, cursor queues, and so forth. (Note that the -O
optimization flag will still be specified. To compile with only the
-g, explicitly set the
CFLAGS
environment variable
before configuring.)
-
--enable-diagnostic
- If you want to build Berkeley DB with debugging run-time sanity checks and with
DIAGNOSTIC #defined during compilation, enter --enable-diagnostic as an
argument to configure. This will cause a number of special checks to be
performed when Berkeley DB is running. This flag should not be defined when
configuring to build production binaries because it degrades performance.
-
--enable-umrw
- When compiling Berkeley DB for use in run-time memory consistency checkers
(in particular, programs that look for reads and writes of uninitialized
memory), use --enable-umrw as an argument to configure. This
guarantees, among other things, that Berkeley DB will completely initialize
allocated pages rather than initializing only the minimum necessary
amount.