diff options
author | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2020-06-07 20:16:00 +0000 |
---|---|---|
committer | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2020-06-07 20:16:00 +0000 |
commit | fcc027677da55c41dcaea045f5b9ff8b088e6495 (patch) | |
tree | 42500a7858959695b971e7f28f1d0bf33185db2e /chapter08/eudev.xml | |
parent | d53fefab5a6772fef606392a61608fc290e6a7ae (diff) |
Initial commit of alternative cross LFS
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter08/eudev.xml')
-rw-r--r-- | chapter08/eudev.xml | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/chapter08/eudev.xml b/chapter08/eudev.xml new file mode 100644 index 000000000..71511c3e7 --- /dev/null +++ b/chapter08/eudev.xml @@ -0,0 +1,191 @@ +<?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; +]> + +<sect1 id="ch-system-eudev" role="wrap" revision="sysv"> + <?dbhtml filename="eudev.html"?> + + <sect1info condition="script"> + <productname>eudev</productname> + <productnumber>&eudev-version;</productnumber> + <address>&eudev-url;</address> + </sect1info> + + <title>Eudev-&eudev-version;</title> + + <indexterm zone="ch-system-eudev"> + <primary sortas="a-Eudev">Eudev</primary> + </indexterm> + + <sect2 role="package"> + <title/> + + <para>The Eudev package contains programs for dynamic creation of device + nodes.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&eudev-ch6-sbu;</seg> + <seg>&eudev-ch6-du;</seg> + </seglistitem> + </segmentedlist> + </sect2> + + <sect2 role="installation"> + <title>Installation of Eudev</title> +<!-- + <para>First, fix a test script:</para> + +<screen><userinput remap="pre">sed -r -i 's|/usr(/bin/test)|\1|' test/udev-test.pl</userinput></screen> +--> +<!-- + <para>Next, remove an unneeded line that causes a build failure:</para> + +<screen><userinput remap="pre">sed -i '/keyboard_lookup_key/d' src/udev/udev-builtin-keyboard.c</userinput></screen> +--> + + <para>Prepare Eudev for compilation:</para> + +<screen><userinput remap="configure">./configure --prefix=/usr \ + --bindir=/sbin \ + --sbindir=/sbin \ + --libdir=/usr/lib \ + --sysconfdir=/etc \ + --libexecdir=/lib \ + --with-rootprefix= \ + --with-rootlibdir=/lib \ + --enable-manpages \ + --disable-static</userinput></screen> + + <para>Compile the package:</para> + +<screen><userinput remap="make">make</userinput></screen> + + <para>Create some directories now that are needed for tests, but + will also be used as a part of installation:</para> + +<screen><userinput remap="test">mkdir -pv /lib/udev/rules.d +mkdir -pv /etc/udev/rules.d</userinput></screen> + + <para>To test the results, issue:</para> + +<screen><userinput remap="test">make check</userinput></screen> + + <para>Install the package:</para> + +<screen><userinput remap="install">make install</userinput></screen> + + <para>Install some custom rules and support files useful in an LFS + environment:</para> + +<screen><userinput remap="install">tar -xvf ../&udev-lfs-version;.tar.xz +make -f &udev-lfs-version;/Makefile.lfs install</userinput></screen> + + </sect2> + + <sect2 id="conf-eudev" role="configuration"> + <title>Configuring Eudev</title> + + <indexterm zone="conf-eudev"> + <primary sortas="a-Eudev">Eudev</primary> + <secondary>configuring</secondary> + </indexterm> + + <indexterm zone="conf-eudev"> + <primary sortas="e-/etc/udev/hwdb.bin">/etc/udev/hwdb.bin</primary> + </indexterm> + + <para>Information about hardware devices is maintained in the + <filename class="directory">/etc/udev/hwdb.d</filename> and + <filename class="directory">/lib/udev/hwdb.d</filename> directories. + <application>Eudev</application> needs that information to be compiled + into a binary database <filename>/etc/udev/hwdb.bin</filename>. Create the + initial database:</para> + +<screen><userinput>udevadm hwdb --update</userinput></screen> + + <para>This command needs to be run each time the hardware information is + updated.</para> + + </sect2> + + <sect2 id="contents-eudev" role="content"> + <title>Contents of Eudev</title> + + <segmentedlist> + <segtitle>Installed programs</segtitle> + <segtitle>Installed libraries</segtitle> + <segtitle>Installed directories</segtitle> + + <seglistitem> + <seg><!-- These are in /lib/udev and not to be called by the user: + accelerometer, ata_id, cdrom_id, collect, mtd_probe, + scsi_id, v4l_id,--> udevadm and udevd</seg> + + <seg>libudev.so</seg> + + <seg>/etc/udev, /lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg> + </seglistitem> + </segmentedlist> + + <variablelist> + <bridgehead renderas="sect3">Short Descriptions</bridgehead> + <?dbfo list-presentation="list"?> + <?dbhtml list-presentation="table"?> + <varlistentry id="udevadm" revision="sysv"> + <term><command>udevadm</command></term> + <listitem> + <para>Generic udev administration tool: controls the udevd daemon, + provides info from the Udev database, monitors uevents, waits for + uevents to finish, tests Udev configuration, and triggers uevents + for a given device</para> + <indexterm zone="ch-system-eudev udevadm"> + <primary sortas="b-udevadm">udevadm</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="udevd"> + <term><command>udevd</command></term> + <listitem> + <para>A daemon that listens for uevents on the netlink socket, + creates devices and runs the configured external programs in + response to these uevents</para> + <indexterm zone="ch-system-eudev udevd"> + <primary sortas="b-udevd">udevd</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="libudev"> + <term><filename class="libraryfile">libudev</filename></term> + <listitem> + <para>A library interface to udev device information</para> + <indexterm zone="ch-system-eudev libudev"> + <primary sortas="c-libudev">libudev</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="etc-udev"> + <term><filename class="directory">/etc/udev</filename></term> + <listitem> + <para>Contains Udev configuration files, + device permissions, and rules for device naming</para> + <indexterm zone="ch-system-eudev etc-udev"> + <primary sortas="e-/etc/udev">/etc/udev</primary> + </indexterm> + </listitem> + </varlistentry> + + </variablelist> + + </sect2> + +</sect1> |