glfs/server/databases/lmdb.xml
2023-08-17 15:49:48 -05:00

164 lines
4.2 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY lmdb-download-http "https://github.com/LMDB/lmdb/archive/LMDB_&lmdb-version;.tar.gz">
<!ENTITY lmdb-download-ftp " ">
<!ENTITY lmdb-md5sum "9d7f059b1624d0a4d4b2f1781d08d600">
<!ENTITY lmdb-size "144 KB">
<!ENTITY lmdb-buildsize "4.7 MB">
<!ENTITY lmdb-time "less than 0.1 SBU">
]>
<sect1 id="lmdb" xreflabel="lmdb-&lmdb-version;">
<?dbhtml filename="lmdb.html"?>
<title>lmdb-&lmdb-version;</title>
<indexterm zone="lmdb">
<primary sortas="a-lmdb">lmdb</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to lmdb</title>
<para>
The <application>lmdb</application> package is a fast, compact, key-value
embedded data store. It uses memory-mapped files, so it has the read
performance of a pure in-memory database while still offering the
persistence of standard disk-based databases, and is only limited to the
size of the virtual address space
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&lmdb-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&lmdb-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &lmdb-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &lmdb-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &lmdb-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &lmdb-time;
</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 role="installation">
<title>Installation of lmdb</title>
<note>
<para>
This package extracts to lmdb-LMDB_&lmdb-version;.
</para>
</note>
<para>
Install <application>lmdb</application> by running the following
commands:
</para>
<screen><userinput>cd libraries/liblmdb &amp;&amp;
make &amp;&amp;
sed -i 's| liblmdb.a||' Makefile</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make prefix=/usr install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<!--para>
<command>sed ... prefix ... Makefile</command>: The Makefile creates the
man pages directory during install if it is not present.
This fixes the directory location.
</para-->
<para>
<command>sed ... liblmdb.a ... Makefile</command>: The package executables
use a static library so it must be created. This command suppresses installation
of the static library.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
mdb_copy, mdb_dump, mdb_load, and mdb_stat
</seg>
<seg>
liblmdb.so
</seg>
<seg>
None
</seg>
</seglistitem>
</segmentedlist>
<!-- TODO
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="lmdb_copy">
<term><command>lmdb_copy</command></term>
<listitem>
<para>
A tool to copy an LMDB environment.
</para>
<indexterm zone="lmdb lmdb_copy">
<primary sortas="b-lmdb_copy">lmdb_copy</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
-->
</sect2>
</sect1>