libxkbcommon is a keymap compiler and support library which processes a reduced subset of keymaps as defined by the XKB specification.
xkeyboard-config-2.44 (runtime)
libxcb-1.17.0, Wayland-1.23.1, and wayland-protocols-1.43
Xvfb from Xorg-Server-21.1.16 or Xwayland-24.1.6
First, fix an issue when libxml2-2.14 and later is installed by running the following command:
sed -i "s/sizeof(dtdstr)/ARRAY_SIZE(dtdstr) - 1/" src/registry.c
Install libxkbcommon by running the following commands:
mkdir build && cd build && meson setup .. \ --prefix=/usr \ --buildtype=release \ -D enable-docs=false && ninja
To test the results, ensure Xvfb and xkeyboard-config-2.44 are available, then issue: ninja test.
Now, as the root
user:
ninja install
Install lib32-libxkbcommon by running the following commands:
rm -rf * && CC="gcc -m32" CXX="g++ -m32" \ PKG_CONFIG_PATH=/usr/lib32/pkgconfig \ meson setup .. \ --prefix=/usr \ --libdir=/usr/lib32 \ --buildtype=release \ -D enable-docs=false && ninja
Now, as the root
user:
DESTDIR=$PWD/DESTDIR ninja install && cp -vr DESTDIR/usr/lib32/* /usr/lib32 && rm -rf DESTDIR && ldconfig
Inspect meson_options.txt
for a
full list of options.
--buildtype=release
:
Specify a buildtype suitable for stable releases of the package, as
the default may produce unoptimized binaries.
-D enable-docs=false
: This
parameter disables building documentation as
https://www.linuxfromscratch.org/blfs/view/svn/general/doxygen.html
is not built.