glfs/general/genlib/libnvme.xml
2023-12-20 19:21:22 -06:00

156 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 libnvme-download-http "https://github.com/linux-nvme/libnvme/archive/refs/tags/v&libnvme-version;/libnvme-&libnvme-version;.tar.gz">
<!ENTITY libnvme-download-ftp " ">
<!ENTITY libnvme-md5sum "136735be8d94d1cd0494712623fa7280">
<!ENTITY libnvme-size "592 KB">
<!ENTITY libnvme-buildsize "8.8 MB">
<!ENTITY libnvme-time "0.1 SBU (including tests)">
]>
<sect1 id="libnvme" xreflabel="libnvme-&libnvme-version;">
<?dbhtml filename="libnvme.html"?>
<title>libnvme-&libnvme-version;</title>
<indexterm zone="libnvme">
<primary sortas="a-libnvme">libnvme</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libnvme</title>
<para>
The <application>libnvme</application> package is a library which
provides type definitions for NVMe specification structures,
enumerations, and bit fields, helper functions to construct, dispatch,
and decode commands and payloads, and utilities to connect, scan, and
manage NVMe devices on a Linux system.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&libnvme-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&libnvme-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &libnvme-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &libnvme-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &libnvme-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &libnvme-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">libnvme Dependencies</bridgehead>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<phrase revision="sysv"><xref linkend="dbus"/>,</phrase>
<xref linkend="json-c"/>,
<xref linkend="keyutils"/>, and
<xref linkend="swig"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libnvme</title>
<para>
Install <application>libnvme</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson setup --prefix=/usr --buildtype=release -Dlibdbus=auto .. &amp;&amp;
ninja</userinput></screen>
<para>
To run the tests, issue: <command>ninja test</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
None
</seg>
<seg>
libnvme.so and
libnvme-mi.so
</seg>
<seg>
/usr/include/nvme and
/usr/lib/python3.11/site-packages/libnvme
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libnvme-lib">
<term><filename class="libraryfile">libnvme.so</filename></term>
<listitem>
<para>
contains functions used to handle operations
relating to NVMe devices.
</para>
<indexterm zone="libnvme libnvme-lib">
<primary sortas="c-libnvme">libnvme.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>