source: general/sysutils/bluez.xml@ 39045922

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 39045922 was 054cfee8, checked in by Bruce Dubbs <bdubbs@…>, 8 years ago

Update to bluez-5.40.
Update to libinput-1.3.1.

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

  • Property mode set to 100644
File size: 16.2 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 bluez-download-http "http://www.kernel.org/pub/linux/bluetooth/bluez-&bluez-version;.tar.xz">
8 <!ENTITY bluez-download-ftp "ftp://ftp.kernel.org/pub/linux/bluetooth/bluez-&bluez-version;.tar.xz">
9 <!ENTITY bluez-md5sum "eb24c0d9eaeb1fb69833f322ec669e8b">
10 <!ENTITY bluez-size "1.6 MB">
11 <!ENTITY bluez-buildsize "62 MB (add 13 MB for tests)">
12 <!ENTITY bluez-time "0.7 SBU (add 0.2 SBU for tests)">
13]>
14
15<sect1 id="bluez" xreflabel="BlueZ-&bluez-version;">
16 <?dbhtml filename="bluez.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>BlueZ-&bluez-version;</title>
24
25 <indexterm zone="bluez">
26 <primary sortas="a-BlueZ">BlueZ</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to BlueZ</title>
31
32 <para>
33 The <application>BlueZ</application> package contains the
34 Bluetooth protocol stack for Linux.
35 </para>
36
37 &lfs79_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&bluez-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&bluez-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &bluez-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &bluez-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &bluez-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &bluez-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
74 <itemizedlist spacing="compact">
75 <listitem>
76 <para>
77 Optional patch (required to work properly with gnome-bluetooth
78 and/or kde bluedevil):
79 <ulink url="&patch-root;/bluez-&bluez-version;-obexd_without_systemd-1.patch"/>
80 </para>
81 </listitem>
82 </itemizedlist>
83
84 <bridgehead renderas="sect3">BlueZ Dependencies</bridgehead>
85
86 <bridgehead renderas="sect4">Required</bridgehead>
87 <para role="required">
88 <xref linkend="dbus"/>,
89 <xref linkend="glib2"/>, and
90 <xref linkend="libical"/>
91 </para>
92
93 <para condition="html" role="usernotes">
94 User Notes: <ulink url="&blfs-wiki;/bluez"/>
95 </para>
96 </sect2>
97
98
99 <sect2 role="kernel" id="bluez-kernel">
100 <title>Kernel Configuration</title>
101
102 <para>
103 Enable the following options in the kernel configuration and recompile the
104 kernel if necessary:
105 </para>
106
107<screen><literal>[*] Networking support ---&gt; [CONFIG_NET]
108 &lt;/M&gt; Bluetooth subsystem support ---&gt; [CONFIG_BT]
109 &lt;*/M&gt; RFCOMM protocol support [CONFIG_BT_RFCOMM]
110 [*] RFCOMM TTY support [CONFIG_BT_RFCOMM_TTY]
111 &lt;*/M&gt; BNEP protocol support [CONFIG_BT_BNEP]
112 [*] Multicast filter support [CONFIG_BT_BNEP_MC_FILTER]
113 [*] Protocol filter support [CONFIG_BT_BNEP_PROTO_FILTER]
114 &lt;*/M&gt; HIDP protocol support [CONFIG_BT_HIDP]
115 Bluetooth device drivers ---&gt;
116 (Select the appropriate drivers for your Bluetooth hardware)
117
118 &lt;*/M&gt; RF switch subsystem support ---&gt; [CONFIG_RFKILL]</literal></screen>
119
120 <indexterm zone="bluez bluez-kernel">
121 <primary sortas="d-bluez">bluez</primary>
122 </indexterm>
123 </sect2>
124
125 <sect2 role="installation">
126 <title>Installation of BlueZ</title>
127
128 <para>
129 If you are going to use <application>BlueZ</application> with
130 gnome-bluetooth and/or kde bluedevil, apply the following patch:
131 </para>
132
133<screen><userinput>patch -Np1 -i ../bluez-&bluez-version;-obexd_without_systemd-1.patch</userinput></screen>
134
135 <para>
136 Install <application>BlueZ</application> by running the following
137 commands:
138 </para>
139
140<screen><userinput>./configure --prefix=/usr \
141 --sysconfdir=/etc \
142 --localstatedir=/var \
143 --enable-library \
144 --disable-systemd &amp;&amp;
145make</userinput></screen>
146
147 <para>
148 To test the results, issue: <userinput>make check</userinput>.
149 </para>
150
151 <para>
152 Now, as the <systemitem class="username">root</systemitem> user:
153 </para>
154
155<screen role="root"><userinput>make install &amp;&amp;
156ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</userinput></screen>
157
158 <para>
159 Install the main configuration file as the
160 <systemitem class="username">root</systemitem> user:
161 </para>
162
163<screen role="root"><userinput>install -v -dm755 /etc/bluetooth &amp;&amp;
164install -v -m644 src/main.conf /etc/bluetooth/main.conf</userinput></screen>
165
166 <para>
167 If desired, install the API documentation as the
168 <systemitem class="username">root</systemitem> user:
169 </para>
170
171<screen role="root"><userinput>install -v -dm755 /usr/share/doc/bluez-&bluez-version; &amp;&amp;
172install -v -m644 doc/*.txt /usr/share/doc/bluez-&bluez-version;</userinput></screen>
173
174 </sect2>
175
176
177 <sect2 role="commands">
178 <title>Command Explanations</title>
179
180 <para>
181 <parameter>--enable-library</parameter>: This switch enables building of the
182 <application>BlueZ</application> 4 compatibility library which is required by
183 some applications.
184 </para>
185
186 <para>
187 <parameter>--disable-systemd</parameter>: This switch is needed because
188 <application>systemd</application> is not part of LFS/BLFS. If you are
189 using systemd, remove this switch.
190 </para>
191
192 <para>
193 <command>ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</command>:
194 This command makes access to the bluetooth daemon more convenient.
195 </para>
196
197 </sect2>
198
199 <sect2 role="configuration">
200 <title>Configuring BlueZ</title>
201
202 <sect3 id="bluez-config">
203 <title>Configuration Files</title>
204 <para>
205 <filename>/etc/bluetooth/main.conf</filename> is installed automatically
206 during the install. Additionally, there are three supplementary
207 configuration files. /etc/sysconfig/bluetooth is installed as a part
208 of the boot script below. In addition, you optionally can install the
209 following, as the <systemitem class="username">root</systemitem> user:
210 </para>
211
212<screen role="root"><userinput>cat > /etc/bluetooth/rfcomm.conf &lt;&lt; "EOF"</userinput>
213<literal># Start rfcomm.conf
214# Set up the RFCOMM configuration of the Bluetooth subsystem in the Linux kernel.
215# Use one line per command
216# See the rfcomm man page for options
217
218
219# End of rfcomm.conf</literal>
220EOF</screen>
221
222<screen role="root"><userinput>cat > /etc/bluetooth/uart.conf &lt;&lt; "EOF"</userinput>
223<literal># Start uart.conf
224# Attach serial devices via UART HCI to BlueZ stack
225# Use one line per device
226# See the hciattach man page for options
227
228# End of uart.conf</literal>
229EOF</screen>
230
231 <indexterm zone="bluez bluez-config">
232 <primary
233 sortas="e-etc-bluetooth-main.conf">/etc/bluetooth/main.conf</primary>
234 </indexterm>
235
236 </sect3>
237
238 <sect3 id="bluez-init">
239 <title>Boot Script</title>
240
241 <para>
242 To automatically start the <command>bluetoothd</command> daemon when the
243 system is rebooted, install the
244 <filename>/etc/rc.d/init.d/bluetooth</filename> bootscript from the
245 <xref linkend="bootscripts"/> package.
246 </para>
247
248 <indexterm zone="bluez bluez-init">
249 <primary sortas="f-bluetooth">bluetooth</primary>
250 </indexterm>
251
252<screen role="root"><userinput>make install-bluetooth</userinput></screen>
253
254 </sect3>
255
256 </sect2>
257
258 <sect2 role="content">
259 <title>Contents</title>
260
261 <segmentedlist>
262 <segtitle>Installed Programs</segtitle>
263 <segtitle>Installed Library</segtitle>
264 <segtitle>Installed Directories</segtitle>
265
266 <seglistitem>
267 <seg>
268 bccmd, bluemoon, bluetoothctl, bluetoothd (symlink), btmon, ciptool,
269 hciattach, hciconfig, hcidump, hcitool, hex2hcd, l2ping, l2test,
270 mpris-proxy, rctest, rfcomm, and sdptool
271 </seg>
272 <seg>
273 libbluetooth.so
274 </seg>
275 <seg>
276 /etc/bluetooth, /usr/{include,libexec}/bluetooth, and
277 /usr/share/doc/bluez-&bluez-version;
278 </seg>
279 </seglistitem>
280 </segmentedlist>
281
282 <variablelist>
283 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
284 <?dbfo list-presentation="list"?>
285 <?dbhtml list-presentation="table"?>
286
287 <varlistentry id="bccmd">
288 <term><command>bccmd</command></term>
289 <listitem>
290 <para>
291 is used to issue BlueCore commands to Cambridge Silicon
292 Radio devices.
293 </para>
294 <indexterm zone="bluez bccmd">
295 <primary sortas="b-bccmd">bccmd</primary>
296 </indexterm>
297 </listitem>
298 </varlistentry>
299
300 <varlistentry id="bluemoon">
301 <term><command>bluemoon</command></term>
302 <listitem>
303 <para>
304 is a Bluemoon configuration utility.
305 </para>
306 <indexterm zone="bluez bluemoon">
307 <primary sortas="b-bluemoon">bluemoon</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
312 <varlistentry id="bluetoothctl">
313 <term><command>bluetoothctl</command></term>
314 <listitem>
315 <para>
316 is the interactive Bluetooth control program.
317 </para>
318 <indexterm zone="bluez bluetoothctl">
319 <primary sortas="b-bluetoothctl">bluetoothctl</primary>
320 </indexterm>
321 </listitem>
322 </varlistentry>
323
324 <varlistentry id="bluetoothd">
325 <term><command>bluetoothd</command></term>
326 <listitem>
327 <para>
328 is the Bluetooth daemon.
329 </para>
330 <indexterm zone="bluez bluetoothd">
331 <primary sortas="b-bluetoothd">bluetoothd</primary>
332 </indexterm>
333 </listitem>
334 </varlistentry>
335
336 <varlistentry id="btmon">
337 <term><command>btmon</command></term>
338 <listitem>
339 <para>
340 provides access to the Bluetooth subsystem monitor
341 infrastructure for reading HCI traces.
342 </para>
343 <indexterm zone="bluez btmon">
344 <primary sortas="b-btmon">btmon</primary>
345 </indexterm>
346 </listitem>
347 </varlistentry>
348
349 <varlistentry id="ciptool">
350 <term><command>ciptool</command></term>
351 <listitem>
352 <para>
353 is used to set up, maintain, and inspect the CIP configuration
354 of the Bluetooth subsystem in the Linux kernel.
355 </para>
356 <indexterm zone="bluez ciptool">
357 <primary sortas="b-ciptool">ciptool</primary>
358 </indexterm>
359 </listitem>
360 </varlistentry>
361
362 <varlistentry id="hciattach">
363 <term><command>hciattach</command></term>
364 <listitem>
365 <para>
366 is used to attach a serial UART to the Bluetooth stack
367 as HCI transport interface.
368 </para>
369 <indexterm zone="bluez hciattach">
370 <primary sortas="b-hciattach">hciattach</primary>
371 </indexterm>
372 </listitem>
373 </varlistentry>
374
375 <varlistentry id="hciconfig">
376 <term><command>hciconfig</command></term>
377 <listitem>
378 <para>
379 is used to configure Bluetooth devices.
380 </para>
381 <indexterm zone="bluez hciconfig">
382 <primary sortas="b-hciconfig">hciconfig</primary>
383 </indexterm>
384 </listitem>
385 </varlistentry>
386
387 <varlistentry id="hcidump">
388 <term><command>hcidump</command></term>
389 <listitem>
390 <para>
391 reads raw HCI data coming from and going to a Bluetooth
392 device and prints to screen commands, events and data
393 in a human-readable form.
394 </para>
395 <indexterm zone="bluez hcidump">
396 <primary sortas="b-hcidump">hcidump</primary>
397 </indexterm>
398 </listitem>
399 </varlistentry>
400
401
402 <varlistentry id="hcitool">
403 <term><command>hcitool</command></term>
404 <listitem>
405 <para>
406 is used to configure Bluetooth connections and send some
407 special command to Bluetooth devices.
408 </para>
409 <indexterm zone="bluez hcitool">
410 <primary sortas="b-hcitool">hcitool</primary>
411 </indexterm>
412 </listitem>
413 </varlistentry>
414
415 <varlistentry id="hex2hcd">
416 <term><command>hex2hcd</command></term>
417 <listitem>
418 <para>
419 is used to convert a file needed by Broadcom devices
420 to hcd (Broadcom bluetooth firmware) format.
421 </para>
422 <indexterm zone="bluez hex2hcd">
423 <primary sortas="b-hex2hcd">hex2hcd</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427<!--
428 <varlistentry id="hid2hci">
429 <term><command>hid2hci</command></term>
430 <listitem>
431 <para>
432 is used to set up switch supported Bluetooth devices into
433 the HCI mode and back.
434 </para>
435 <indexterm zone="bluez hid2hci">
436 <primary sortas="b-hid2hci">hid2hci</primary>
437 </indexterm>
438 </listitem>
439 </varlistentry>-->
440
441 <varlistentry id="l2ping">
442 <term><command>l2ping</command></term>
443 <listitem>
444 <para>
445 is used to send a L2CAP echo request to the Bluetooth MAC
446 address given in dotted hex notation.
447 </para>
448 <indexterm zone="bluez l2ping">
449 <primary sortas="b-l2ping">l2ping</primary>
450 </indexterm>
451 </listitem>
452 </varlistentry>
453
454 <varlistentry id="l2test">
455 <term><command>l2test</command></term>
456 <listitem>
457 <para>
458 is L2CAP testing program.
459 </para>
460 <indexterm zone="bluez l2test">
461 <primary sortas="b-l2test">l2test</primary>
462 </indexterm>
463 </listitem>
464 </varlistentry>
465<!--
466 <varlistentry id="obexd">
467 <term><command>obexd</command></term>
468 <listitem>
469 <para>
470 is the OBEX daemon.
471 </para>
472 <indexterm zone="bluez obexd">
473 <primary sortas="b-obexd">obexd</primary>
474 </indexterm>
475 </listitem>
476 </varlistentry>-->
477
478 <varlistentry id="rctest">
479 <term><command>rctest</command></term>
480 <listitem>
481 <para>
482 is used to test RFCOMM communications on the
483 Bluetooth stack.
484 </para>
485 <indexterm zone="bluez rctest">
486 <primary sortas="b-rctest">rctest</primary>
487 </indexterm>
488 </listitem>
489 </varlistentry>
490
491 <varlistentry id="rfcomm">
492 <term><command>rfcomm</command></term>
493 <listitem>
494 <para>
495 is used to set up, maintain, and inspect the RFCOMM
496 configuration of the Bluetooth subsystem in the
497 Linux kernel.
498 </para>
499 <indexterm zone="bluez rfcomm">
500 <primary sortas="b-rfcomm">rfcomm</primary>
501 </indexterm>
502 </listitem>
503 </varlistentry>
504
505 <varlistentry id="sdptool">
506 <term><command>sdptool</command></term>
507 <listitem>
508 <para>
509 is used to perform SDP queries on Bluetooth devices.
510 </para>
511 <indexterm zone="bluez sdptool">
512 <primary sortas="b-sdptool">sdptool</primary>
513 </indexterm>
514 </listitem>
515 </varlistentry>
516
517 <varlistentry id="libbluetooth">
518 <term><filename class="libraryfile">libbluetooth.so</filename></term>
519 <listitem>
520 <para>
521 contains the <application>BlueZ</application> 4 API functions.
522 </para>
523 <indexterm zone="bluez libbluetooth">
524 <primary sortas="c-libbluetooth">libbluetooth.so</primary>
525 </indexterm>
526 </listitem>
527 </varlistentry>
528 </variablelist>
529
530 </sect2>
531
532</sect1>
Note: See TracBrowser for help on using the repository browser.