Udev Extras (from systemd)

Introduction to Udev Extras

In 2012, the Udev code distribution was merged with systemd. Systemd is a set of programs that replace the SysVInit package used by LFS and is much more complex. It is not compatible with the LFS bootscripts and has many problems and few advantages for most LFS users.

The procedures below extract libraries and programs from the systemd sources that could not be built in LFS due to library dependency issues.

Unlike any other package in the BLFS book, there is no set version of systemd specified to download. Several version updates to LFS and BLFS means there are probably many different versions of Udev on the platforms that BLFS is being built upon. Therefore, you should download and use the version of systemd your computer currently uses. The BLFS team has no experience updating (or reverting to an older version) the Udev programs “on the fly.” To discover the version of Udev your computer currently uses, issue /sbin/udevadm --version.

This package is known to build and work properly using an LFS-7.4 platform.

Package Information

Udev Extras Dependencies


http://anduin.linuxfromscratch.org/sources/other/ (match the udev-lfs-???.tar.bz2 tarball version to the systemd version used in LFS). GLib-2.36.4 (for the gudev library), Gperf-3.0.4 (for keymap), and gobject-introspection-1.36.0 (for gir-data, needed for Gnome)



Optional Runtime Dependencies

pciutils-3.2.0 and usbutils-007

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/udev-extras

Installation of Udev Extras

First, put the custom LFS files in place:

tar -xf ../udev-lfs-186.tar.bz2


For udev-lfs-197-2.tar.bz2, there is a minor error in the Makefile. For that version, run:

sed -i -e '/samsung-9/d' udev-lfs-197-2/makefile-incl.keymap


Support for special keys for many laptops is provided by the keymap program and supporting files. If the keymap capability is desired, use:

make -f udev-lfs-186/Makefile.lfs keymap

To install keymap and its associated files, issue the following command as the root user:

make -f udev-lfs-186/Makefile.lfs install-keymap


To build the libgudev-1.0 library and interface files, run:

make -f udev-lfs-186/Makefile.lfs gudev

Install the gudev library, run, as the root user:

make -f udev-lfs-186/Makefile.lfs install-gudev

GObject Files

To build the gobject-introspection interface (gir) files for the libgudev-1.0 library, run:

make -f udev-lfs-186/Makefile.lfs gir-data

Install the gir data, as the root user:

make -f udev-lfs-186/Makefile.lfs install-gir-data


There is a shortcut to build and install all of the udev components at once using the all and install-all Makefile.lfs targets. The installation of this target will overwrite the base LFS udev files and has not been thoroughly tested at the time of this writing. If using this procedure, the udev daemon should be stopped before overwriting the existing udevd and udev libraries.


A list of the installed files, along with their short descriptions can be found at ../../../../lfs/view/7.4/chapter06/udev.html#contents-udev.

The following is some additional content information.

Installed Programs: findkeyboards, keyboard-force-release.sh, and keymap
Installed Library: libgudev-1.0.so
Installed Directories: /lib/udev/keymaps/force-release, /usr/include/gudev-1.0/gudev, /usr/lib/girepository-1.0, /usr/share/gir-1.0, and /usr/share/gtk-doc/html/gudev

Short Descriptions


configures computer model specific key mappings.


is a GObject-based wrapper library for libudev.

Last updated on 2013-08-20 13:51:02 -0700