source: general/sysutils/bluez.xml@ cb03daa

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 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 cb03daa was ded8dfc, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Update to btrfs-progs-4.12.
Update to whois-5.2.17.
Update to unrar-5.5.7.
Update to libinput-1.8.1.
Update to bluez-5.46.
Remove unneeded paragraph in NFS-Utils.
Also remove references to quotas in nfs-server bootscript.

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

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