Berkeley DB: Building for Windows platforms
Description: Berkeley DB: An embedded database programmatic toolkit.
Keywords: embedded,database,programmatic,toolkit,b+tree,btr ee,hash,hashing,transaction,transactions,locking,logging,access method,access me thods,java,C,C++

# Building for Windows platforms

The build_win32 directory contains project files for both MSVC4.X and 5.0:

DB_VC4.mdp | Visual C++ 4.0 project file
DB_VC4.mak | Makefile exported by Visual C++ 4.0.
Berkeley_DB.dsw | Visual C++ 5.0 project file
*.dsp | Visual C++ 5.0 subprojects

In MSVC5.0, open the file Berkeley_DB.dsw The 5.0 project files are fully developed, allowing you to build both DLL and static versions of libdb, the test harness and the command-line utilities. To ensure that correct versions of include files are used, select the menu item Tools/Options under tab Directories, Platform Win32 and select Include files. Put the build_win32 subdirectory on the list followed by the include subdirectory, and select OK. If you want to build absolutely everything, select the db_buildall subproject and build.

When building your application, you should normally use compile options "debug multithreaded dll" and link against build_win32/Debug/libdb.lib. If you want to link against a static (non-DLL) version of the library, use the "debug multithreaded" compile options and link against build_win32/Debug/libdbs.lib.

In MSVC4.X, first move your distribution directory to \db (so that the project file is \db\build_win32\DB_VC4.mdp for some drive letter). Then open the file DB_VC4.mdp. The 4.X project files currently allow you to build only the DLL version of libdb. To ensure that correct versions of include files are used, select the menu item Tools/Options under tab Directories, Platform Win32 and select Include files. Put the /db/build_win32 directory on the list followed by the /db/include directory, and select OK.

C++ support is built automatically on Win32.

Java support is not built automatically. See Configuring and Building the Java API for more information.