source: x/installing/libinput.xml@ c28df1a

10.0 10.1 11.0 11.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind lazarus perl-modules qt5new trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since c28df1a was c28df1a, checked in by Bruce Dubbs <bdubbs@…>, 5 years ago

Update to mesa-17.2.3.
Update to libXfont 1.5.3.
Update to libinput-1.9.0.
Update to harfbuzz-1.6.0.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@19350 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 8.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY libinput-version "1.9.0">
8
9 <!ENTITY libinput-download-http "https://www.freedesktop.org/software/libinput/libinput-&libinput-version;.tar.xz">
10 <!ENTITY libinput-download-ftp " ">
11 <!ENTITY libinput-md5sum "b33b5505f639bf01a6e2e3a01892e91f">
12 <!ENTITY libinput-size "448 KB">
13 <!ENTITY libinput-buildsize "9.2 MB (add 8 MB for tests)">
14 <!ENTITY libinput-time "less than 0.1 SBU (add 14 minutes for tests, not CPU dependent)">
15]>
16
17<sect2 id="libinput" xreflabel="libinput-&libinput-version;">
18 <?dbhtml filename="libinput.html"?>
19
20 <sect2info>
21 <othername>$LastChangedBy: renodr $</othername>
22 <date>$Date: 2015-09-14 17:42:53 -0500 (Mon, 14 Sep 2015) $</date>
23 </sect2info>
24
25 <title>libinput-&libinput-version;</title>
26
27 <indexterm zone="libinput">
28 <primary sortas="a-libinput">libinput</primary>
29 </indexterm>
30
31 <sect3 role="package">
32 <title>Introduction to libinput</title>
33
34 <para>
35 <application>libinput</application> is a library that handles
36 input devices for display servers and other applications that
37 need to directly deal with input devices.
38 </para>
39
40 &lfs81_checked;
41
42 <bridgehead renderas="sect4">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
45 <para>
46 Download (HTTP): <ulink url="&libinput-download-http;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download (FTP): <ulink url="&libinput-download-ftp;"/>
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download MD5 sum: &libinput-md5sum;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Download size: &libinput-size;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated disk space required: &libinput-buildsize;
67 </para>
68 </listitem>
69 <listitem>
70 <para>
71 Estimated build time: &libinput-time;
72 </para>
73 </listitem>
74 </itemizedlist>
75
76 <bridgehead renderas="sect4">libinput Dependencies</bridgehead>
77
78 <bridgehead renderas="sect5">Required</bridgehead>
79 <para role="required">
80 <xref linkend="libevdev"/> and
81 <xref linkend="mtdev"/>
82 </para>
83
84 <bridgehead renderas="sect5">Optional</bridgehead>
85 <para role="optional">
86 <xref linkend="check"/> and
87 <xref linkend="valgrind"/> (to run the tests),
88 <xref linkend="doxygen"/> and
89 <xref linkend="graphviz"/> (to build the documentation)
90 <xref linkend="gtk3"/> (to build the GUI event viewer),
91 <ulink url="http://www.nongnu.org/libunwind/">libunwind</ulink> (required for tests), and
92 <ulink revision="sysv" url="https://sourceforge.net/projects/linuxwacom/files/libwacom/">libwacom</ulink>
93 <xref revision="systemd" linkend="libwacom"/>
94 </para>
95
96 <para condition="html" role="usernotes">
97 User Notes: <ulink url="&blfs-wiki;/libinput"/>
98 </para>
99 </sect3>
100
101 <sect3 role="installation">
102 <title>Installation of libinput</title>
103
104 <para>
105 Install <application>libinput</application> by running the following
106 commands:
107 </para>
108
109<screen><userinput>meson --prefix $XORG_PREFIX \
110 -Dudev-dir=/lib/udev \
111 -Ddebug-gui=false \
112 -Dtests=false \
113 -Ddocumentation=false \
114 -Dlibwacom=false \
115 build &amp;&amp;
116cd build &amp;&amp;
117ninja</userinput></screen>
118
119 <note>
120 <para>If you want to run the tests, remove -Dtests from the
121 <command>meson</command> command above. The external
122 library, libunwind, must be installed.</para>
123
124 <para> To run the tests for this package, valgrind requires a version of
125 the /lib/ld-2.23.so (or later) library with debugging symbols present.
126 Normally in LFS these debugging symbols are stripped at the end of
127 Chapter 6. To get this library, glibc must be rebuilt with the current
128 glibc version using the same compiler that was used to build LFS. The
129 ld-2.23.so can then be renamed to ld-2.23.so.dbg and copied to /lib.
130 Then a symlink needs to be changed:</para>
131
132 <screen role="nodump"><userinput>ln -sfv ld-2.23.so.dbg /lib/ld-linux-x86-64.so.2</userinput></screen>
133
134 <para>Adjust the above instruction as needed for a 32-bit system
135 or for a different version of glibc</para>
136
137 </note>
138
139 <para>
140 Running the testsuite for this package can cause problems.
141 It creates a number of dummy input devices on the currently
142 running system that can lead to crashing a local X server or
143 a desktop environment. If you understand the risks and have
144 the optional <xref linkend="check"/> and
145 <xref linkend="valgrind"/> packages installed, the regression
146 tests can be run as the <systemitem
147 class="username">root</systemitem> user with
148 <userinput>ninja check</userinput>. Note that depending on
149 the system configuration and hardware, some tests may fail.
150 </para>
151
152 <para>
153 Now, as the <systemitem class="username">root</systemitem> user:
154 </para>
155
156<screen role="root"><userinput>ninja install</userinput></screen>
157
158 <para>
159 If <xref linkend="doxygen"/> and <xref linkend="graphviz"/> were
160 present during the build, you can install the generated documentation
161 by running the following commands as the <systemitem
162 class="username">root</systemitem> user:
163 </para>
164
165<screen role="root"><userinput>install -v -dm755 $XORG_PREFIX/share/doc/libinput-&libinput-version; &amp;&amp;
166cp -rv doc/html/* $XORG_PREFIX/share/doc/libinput-&libinput-version;</userinput></screen>
167
168 </sect3>
169
170 <sect3 role="commands">
171 <title>Command Explanations</title>
172
173 <para>
174 <option>-Dudev-dir=/lib/udev</option>: This switch
175 specifies where UDev rules and hwdb files will be installed.
176 </para>
177
178 <para>
179 <option>-Ddebug-gui=false</option>: This switch
180 disables creation of a visual debug helper for libinput. Remove
181 if you want it, and you have <xref linkend="gtk3"/> installed.
182 </para>
183
184 <para>
185 <option>-Dtests=false</option>: This switch disables compilation
186 of tests. Remove if you want to run the tests, and you have the external
187 library, libunwind, installed.
188 </para>
189
190 <para>
191 <option>-Ddocumentation=false</option>: This switch disables
192 generation of the documentation. Remove if you want to generate it, and
193 you have <xref linkend="doxygen"/> and <xref linkend="graphviz"/>
194 installed.
195 </para>
196
197 <para>
198 <option>-Dlibwacom=false</option>: Remove this
199 option if you have the external library libwacom installed.
200 </para>
201
202 </sect3>
203
204 <sect3 role="content">
205 <title>Contents</title>
206
207 <segmentedlist>
208 <segtitle>Installed Programs</segtitle>
209 <segtitle>Installed Libraries</segtitle>
210 <segtitle>Installed Directories</segtitle>
211
212 <seglistitem>
213 <seg>
214 libinput,
215 libinput-debug-events, and
216 libinput-list-devices
217 </seg>
218 <seg>
219 libinput.so
220 </seg>
221 <seg>
222 $XORG_PREFIX/libexec/libinput and
223 $XORG_PREFIX/share/doc/libinput-&libinput-version;
224 </seg>
225 </seglistitem>
226 </segmentedlist>
227
228 <variablelist>
229 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
230 <?dbfo list-presentation="list"?>
231 <?dbhtml list-presentation="table"?>
232
233 <varlistentry id="libinput-debug-events">
234 <term><command>libinput-debug-events</command></term>
235 <listitem>
236 <para>
237 is a debug helper for <application>libinput</application>.
238 </para>
239 <indexterm zone="libinput libinput-debug-events">
240 <primary sortas="b-libinput-debug-events">libinput-debug-events</primary>
241 </indexterm>
242 </listitem>
243 </varlistentry>
244
245 <varlistentry id="libinput-list-devices">
246 <term><command>libinput-list-devices</command></term>
247 <listitem>
248 <para>
249 lists local devices as recognized by
250 <application>libinput</application>.
251 </para>
252 <indexterm zone="libinput libinput-list-devices">
253 <primary sortas="b-libinput-list-devices">libinput-list-devices</primary>
254 </indexterm>
255 </listitem>
256 </varlistentry>
257
258 <varlistentry id="libinput-lib">
259 <term><filename class="libraryfile">libinput.so</filename></term>
260 <listitem>
261 <para>
262 contains API functions for handling input devices.
263 </para>
264 <indexterm zone="libinput libinput-lib">
265 <primary sortas="c-libinput">libinput.so</primary>
266 </indexterm>
267 </listitem>
268 </varlistentry>
269
270 </variablelist>
271
272 </sect3>
273
274</sect2>
Note: See TracBrowser for help on using the repository browser.