<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Berkeley DB Installation and Build Guide</title> <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /> <link rel="start" href="index.html" title="Berkeley DB Installation and Build Guide" /> <link rel="next" href="preface.html" title="Preface" /> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">Berkeley DB Installation and Build Guide</th> </tr> <tr> <td width="20%" align="left"> </td> <th width="60%" align="center"> </th> <td width="20%" align="right"> <a accesskey="n" href="preface.html">Next</a></td> </tr> </table> <hr /> </div> <div class="book" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h1 class="title"><a id="id2739081"></a>Berkeley DB Installation and Build Guide</h1> </div> <div> <div class="legalnotice"> <a id="id3582202"></a> <p class="legalnotice-title"> <b>Legal Notice</b> </p> <p> This documentation is distributed under an open source license. You may review the terms of this license at: <a class="ulink" href="http://download.oracle.com/docs/cd/E17076_02/html/license/license_db.html" target="_top">http://download.oracle.com/docs/cd/E17076_02/html/license/license_db.html</a> </p> <p> Oracle, Berkeley DB, and Sleepycat are trademarks or registered trademarks of Oracle. All rights to these marks are reserved. No third-party use is permitted without the express prior written consent of Oracle. </p> <p> Other names may be trademarks of their respective owners. </p> <p> To obtain a copy of this document's original source code, please submit a request to the Oracle Technology Network forum at: <a class="ulink" href="http://forums.oracle.com/forums/forum.jspa?forumID=271" target="_top">http://forums.oracle.com/forums/forum.jspa?forumID=271</a> </p> </div> </div> <div> <p class="pubdate">1/31/2011</p> </div> </div> <hr /> </div> <div class="toc"> <p> <b>Table of Contents</b> </p> <dl> <dt> <span class="preface"> <a href="preface.html">Preface</a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="preface.html#conventions">Conventions Used in this Book</a> </span> </dt> <dt> <span class="sect1"> <a href="moreinfo.html">For More Information</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="moreinfo.html#contact_us">Contact Us</a> </span> </dt> </dl> </dd> </dl> </dd> <dt> <span class="chapter"> <a href="introduction.html">1. Introduction</a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="introduction.html#install-overview">Installation Overview</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="install.html">2. System Installation Notes </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="install.html#install_file">File utility /etc/magic information</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="install.html#magic">Magic information</a> </span> </dt> <dt> <span class="sect2"> <a href="install.html#big-endian">Big-endian magic information</a> </span> </dt> <dt> <span class="sect2"> <a href="install.html#little-endian">Little-endian magic information</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="install_multiple.html">Building with multiple versions of Berkeley DB</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="debug.html">3. Debugging Applications </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="debug.html#debug_intro">Introduction to debugging</a> </span> </dt> <dt> <span class="sect1"> <a href="debug_compile.html">Compile-time configuration</a> </span> </dt> <dt> <span class="sect1"> <a href="debug_runtime.html">Run-time error information</a> </span> </dt> <dt> <span class="sect1"> <a href="debug_printlog.html">Reviewing Berkeley DB log files</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="debug_printlog.html#id3583586">Augmenting the Log for Debugging</a> </span> </dt> <dt> <span class="sect2"> <a href="debug_printlog.html#id3584107">Extracting Committed Transactions and Transaction Status</a> </span> </dt> <dt> <span class="sect2"> <a href="debug_printlog.html#id3583833">Extracting Transaction Histories</a> </span> </dt> <dt> <span class="sect2"> <a href="debug_printlog.html#id3584126">Extracting File Histories</a> </span> </dt> <dt> <span class="sect2"> <a href="debug_printlog.html#id3584619">Extracting Page Histories</a> </span> </dt> <dt> <span class="sect2"> <a href="debug_printlog.html#id3584635">Other log processing tools</a> </span> </dt> </dl> </dd> </dl> </dd> <dt> <span class="chapter"> <a href="build_win.html">4. Building Berkeley DB for Windows </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="build_win.html#win_build32">Building Berkeley DB for 32 bit Windows</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_win.html#id3583155">Visual C++ .NET 2010</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win.html#id3584680">Visual C++ .NET 2008</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win.html#id3584340">Visual C++ .NET 2005</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win.html#id3584769">Build results</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="win_build64.html">Building Berkeley DB for 64-bit Windows</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="win_build64.html#id3584868">x64 build with Visual Studio 2005 or newer</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="win_build_cygwin.html">Building Berkeley DB with Cygwin</a> </span> </dt> <dt> <span class="sect1"> <a href="win_build_cxx.html">Building the C++ API</a> </span> </dt> <dt> <span class="sect1"> <a href="win_build_stl.html">Building the C++ STL API</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_java.html">Building the Java API</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_csharp.html">Building the C# API</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_sql.html">Building the SQL API</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_win_sql.html#id3585370">Binary Compatibility With SQLite</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#id3583741">Setting Preprocessor Flags </a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#id3585339">Enabling Extensions</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#build_jdbc">Building the JDBC Driver</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#id3585526">Using the JDBC Driver</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#id3585910">Building the ODBC Driver</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_sql.html#id3585590"> Using the ADO.NET Driver </a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_win_tcl.html">Building the Tcl API</a> </span> </dt> <dt> <span class="sect1"> <a href="win_build_dist_dll.html">Distributing DLLs</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_small.html">Building a small memory footprint library</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_test.html">Running the test suite under Windows</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_win_test.html#id3586782">Building the software needed by the tests</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_test.html#id3586614">Running the test suite under Windows</a> </span> </dt> <dt> <span class="sect2"> <a href="build_win_test.html#build_win_test_sql">Building the software needed by the SQL tests</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_win_notes.html">Windows notes</a> </span> </dt> <dt> <span class="sect1"> <a href="build_win_faq.html">Windows FAQ</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="build_wince.html">5. Building Berkeley DB for Windows Mobile </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="build_wince.html#build_wince_intro">Building for Windows Mobile</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_wince.html#id3584159">Building Berkeley DB for Windows Mobile</a> </span> </dt> <dt> <span class="sect2"> <a href="build_wince.html#id3587559">Changing Build Configuration Type</a> </span> </dt> <dt> <span class="sect2"> <a href="build_wince.html#id3587053">Building Berkeley DB for different target platforms</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_wince_notes.html">Windows Mobile notes</a> </span> </dt> <dt> <span class="sect1"> <a href="build_wince_faq.html">Windows Mobile FAQ</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="build_unix.html">6. Building Berkeley DB for UNIX/POSIX </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="build_unix.html#build_unix_intro">Building for UNIX/POSIX</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_unix.html#build_unix_sqlinter">Building the Berkeley DB SQL Interface</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_unix_conf.html">Configuring Berkeley DB</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_sql.html">Configuring the SQL Interface</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_unix_sql.html#id3589681">Changing Compile Options</a> </span> </dt> <dt> <span class="sect2"> <a href="build_unix_sql.html#id3588560">Enabling Extensions</a> </span> </dt> <dt> <span class="sect2"> <a href="build_unix_sql.html#build_unix_jdbc">Building the JDBC Driver </a> </span> </dt> <dt> <span class="sect2"> <a href="build_unix_sql.html#id3589723">Using the JDBC Driver </a> </span> </dt> <dt> <span class="sect2"> <a href="build_unix_sql.html#id3590006">Building the ODBC Driver</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_unix_small.html">Building a small memory footprint library</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_flags.html">Changing compile or load options</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_install.html">Installing Berkeley DB</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_shlib.html">Dynamic shared libraries</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_test.html">Running the test suite under UNIX</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_unix_test.html#build_unix_test_sql">Building SQL Test Suite on Unix</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_unix_notes.html">Architecture independent FAQ</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_aix.html">AIX</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_freebsd.html">FreeBSD</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_hpux.html">HP-UX</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_iphone.html">iPhone OS</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_irix.html">IRIX</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_linux.html">Linux</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_macosx.html">Mac OS X</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_osf1.html">OSF/1</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_qnx.html">QNX</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_sco.html">SCO</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_solaris.html">Solaris</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_sunos.html">SunOS</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_ultrix.html">Ultrix</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="build_vxworks.html">7. Building Berkeley DB for VxWorks </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="build_vxworks.html#build_vxworks_intro">Building for VxWorks 5.4 and 5.5</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_vxworks.html#id3593141">Building With Tornado 2.0 or Tornado 2.2</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_vxworks_intro6x.html">Building for VxWorks 6.x</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_vxworks_intro6x.html#id3592826">Building With Wind River Workbench using the Makefile</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_vxworks_notes.html">VxWorks notes</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="build_vxworks_notes.html#id3592229">Building and Running the Demo Program</a> </span> </dt> <dt> <span class="sect2"> <a href="build_vxworks_notes.html#id3593398">Building and Running the Utility Programs</a> </span> </dt> <dt> <span class="sect2"> <a href="build_vxworks_notes.html#id3593424">VxWorks 5.4/5.5: shared memory</a> </span> </dt> <dt> <span class="sect2"> <a href="build_vxworks_notes.html#id3593412">VxWorks 5.4/5.5: building a small memory footprint library</a> </span> </dt> <dt> <span class="sect2"> <a href="build_vxworks_notes.html#id3593445">Support for Replication Manager</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="build_vxworks_faq.html">VxWorks FAQ</a> </span> </dt> </dl> </dd> <dt> <span class="chapter"> <a href="upgrade_51_toc.html">8. Upgrading Berkeley DB 11.2.5.0 applications to Berkeley DB 11.2.5.1 </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="upgrade_51_toc.html#upgrade_51_intro">Introduction</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_51_dpl_recompile.html">DPL Applications must be recompiled</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_51_src_reorg.html">Source Tree Rearranged</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_51_sqlite_ver.html">SQLite Interface Upgrade</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_51_mod_db4_unsupp.html">Mod_db4 Support Discontinued</a> </span> </dt> <dt> <span class="sect1"> <a href="changelog_5_1.html">Berkeley DB Library Version 11.2.5.1 Change Log</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="changelog_5_1.html#id3594174">Changes between 11.2.5.1.19 and 11.2.5.1.25</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_5_1.html#id3594183">Changes between 11.2.5.0 and 11.2.5.1.19</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_5_1.html#id3595233">Known Bugs</a> </span> </dt> </dl> </dd> </dl> </dd> <dt> <span class="chapter"> <a href="upgrade_11gr2_toc.html">9. Upgrading Berkeley DB 4.8 applications to Berkeley DB 11.2.5.0 </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="upgrade_11gr2_toc.html#upgrade_11gr2_intro">Introduction</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_dbsqlcodegen.html">db_sql Renamed to db_sql_codegen</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_autoinit.html">DB_REP_CONF_NOAUTOINIT Replaced</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_repmgr.html">Support for Multiple Client-to-Client Peers</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_encrypt.html">Cryptography Support</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_db_nosync.html">DB_NOSYNC Flag to Flush Files</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_11gr2_remsupp.html">Dropped Support</a> </span> </dt> <dt> <span class="sect1"> <a href="build_unix_stacksize.html">Changing Stack Size</a> </span> </dt> <dt> <span class="sect1"> <a href="changelog_5_0.html">Berkeley DB 11g Release 2 Change Log</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="changelog_5_0.html#id3595570">Changes between 11.2.5.0.26 and 11.2.5.0.32</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_5_0.html#id3594284">Changes between 11.2.5.0.21 and 11.2.5.0.26</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_5_0.html#id3595036">Changes between 4.8 and 11.2.5.0.21</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_5_0.html#id3583512">Known Bugs</a> </span> </dt> </dl> </dd> </dl> </dd> <dt> <span class="chapter"> <a href="upgrade_4_8_toc.html">10. Upgrading Berkeley DB 4.7 applications to Berkeley DB 4.8</a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="upgrade_4_8_toc.html#upgrade_4_8_intro">Introduction</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_4_8_dpl.html">Registering DPL Secondary Keys</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_4_8_mpool.html">Minor Change in Behavior of DB_MPOOLFILE->get</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_4_8_fcntl.html">Dropped Support for fcntl System Calls</a> </span> </dt> <dt> <span class="sect1"> <a href="upgrade_4_8_disk.html">Upgrade Requirements</a> </span> </dt> <dt> <span class="sect1"> <a href="changelog_4_8.html">Berkeley DB 4.8.28 Change Log</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3595612"> Changes between 4.8.26 and 4.8.28:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596697"> Known bugs in 4.8 </a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596993"> Changes between 4.8.24 and 4.8.26:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3593670"> Changes between 4.8.21 and 4.8.24:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597093"> Changes between 4.7 and 4.8.21:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596753"> Database or Log File On-Disk Format Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3595636"> New Features:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596166"> Database Environment Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596959"> Concurrent Data Store Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3596966"> General Access Method Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597084"> Btree Access Method Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597324"> Hash Access Method Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597219"> Queue Access Method Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3595733"> Recno Access Method Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597465"> C-specific API Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597089"> C++-specific API Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597518"> Java-specific API Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597548"> Direct Persistence Layer (DPL), Bindings and Collections API:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597175"> Tcl-specific API Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597584"> RPC-specific Client/Server Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597176"> Replication Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597559"> XA Resource Manager Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597512"> Locking Subsystem Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597545"> Logging Subsystem Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597962"> Memory Pool Subsystem Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597976"> Mutex Subsystem Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597539"> Test Suite Changes</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3597610"> Transaction Subsystem Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3598082"> Utility Changes:</a> </span> </dt> <dt> <span class="sect2"> <a href="changelog_4_8.html#id3598140"> Configuration, Documentation, Sample Application, Portability and Build Changes:</a> </span> </dt> </dl> </dd> </dl> </dd> <dt> <span class="chapter"> <a href="test.html">11. Test Suite </a> </span> </dt> <dd> <dl> <dt> <span class="sect1"> <a href="test.html#test_run">Running the test suite</a> </span> </dt> <dd> <dl> <dt> <span class="sect2"> <a href="test.html#id3598425">Running SQL Test Suite on Unix</a> </span> </dt> <dt> <span class="sect2"> <a href="test.html#id3598278">Running SQL Test Suite on Windows</a> </span> </dt> </dl> </dd> <dt> <span class="sect1"> <a href="test_faq.html">Test suite FAQ</a> </span> </dt> </dl> </dd> </dl> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"> </td> <td width="20%" align="center"> </td> <td width="40%" align="right"> <a accesskey="n" href="preface.html">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top"> </td> <td width="20%" align="center"> </td> <td width="40%" align="right" valign="top"> Preface</td> </tr> </table> </div> </body> </html>