source: general/sysutils/bluez.xml@ 36cfad9

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.6 7.7 7.8 7.9 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 krejzi/svn 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 36cfad9 was 36cfad9, checked in by Fernando de Oliveira <fernando@…>, 10 years ago

Update to bluez-5.22.

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

  • Property mode set to 100644
File size: 13.6 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 "fd0783c8bc524bc9b26514aad1f85814">
10 <!ENTITY bluez-size "1.4 MB">
11 <!ENTITY bluez-buildsize "50 MB (additional 1 MB for the API docs)">
12 <!ENTITY bluez-time "0.6 SBU">
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 &lfs75_built;
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;*&gt; or &lt;M&gt; Bluetooth subsystem support ---&gt; [CONFIG_BT]
109 &lt;*&gt; or &lt;M&gt; RFCOMM protocol support [CONFIG_BT_RFCOMM]
110 [*] RFCOMM TTY support [CONFIG_BT_RFCOMM_TTY]
111 &lt;*&gt; or &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;*&gt; or &lt;M&gt; HIDP protocol support [CONFIG_BT_HIDP]
115
116 Bluetooth device drivers ---&gt;
117 &lt;*&gt; or &lt;M&gt; RF switch subsystem support</literal></screen>
118
119 <para>
120 Select the appropriate drivers for your Bluetooth hardware.
121 </para>
122
123 <indexterm zone="bluez bluez-kernel">
124 <primary sortas="d-bluez">bluez</primary>
125 </indexterm>
126 </sect2>
127
128 <sect2 role="installation">
129 <title>Installation of BlueZ</title>
130
131 <para>
132 If you are going to use <application>BlueZ</application> with
133 gnome-bluetooth and/or kde bluedevil, apply the following patch:
134 </para>
135
136<screen><userinput>patch -Np1 -i ../bluez-&bluez-version;-obexd_without_systemd-1.patch</userinput></screen>
137
138 <para>
139 Install <application>BlueZ</application> by running the following
140 commands:
141 </para>
142
143<screen><userinput>./configure --prefix=/usr \
144 --sysconfdir=/etc \
145 --localstatedir=/var \
146 --enable-library \
147 --disable-systemd &amp;&amp;
148make</userinput></screen>
149
150 <para>
151 To test the results, issue: <userinput>make check</userinput>.
152 </para>
153
154 <para>
155 Now, as the <systemitem class="username">root</systemitem> user:
156 </para>
157
158<screen role="root"><userinput>make install &amp;&amp;
159ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</userinput></screen>
160
161 <para>
162 Install the main configuration file as the
163 <systemitem class="username">root</systemitem> user:
164 </para>
165
166<screen role="root"><userinput>install -v -dm755 /etc/bluetooth &amp;&amp;
167install -v -m644 src/main.conf /etc/bluetooth/main.conf</userinput></screen>
168
169 <para>
170 If desired, install the API documentation as the
171 <systemitem class="username">root</systemitem> user:
172 </para>
173
174<screen role="root"><userinput>install -v -dm755 /usr/share/doc/bluez-&bluez-version; &amp;&amp;
175install -v -m644 doc/*.txt /usr/share/doc/bluez-&bluez-version;</userinput></screen>
176
177 </sect2>
178
179
180 <sect2 role="commands">
181 <title>Command Explanations</title>
182
183 <para>
184 <parameter>--enable-library</parameter>: This switch enables building of the
185 <application>BlueZ</application> 4 compatibility library which is required by
186 some applications.
187 </para>
188
189 <para>
190 <parameter>--disable-systemd</parameter>: This switch is needed because
191 <application>systemd</application> is not part of LFS/BLFS. If you are
192 using systemd, remove this switch.
193 </para>
194
195 <para>
196 <command>ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin</command>:
197 This command makes access to the bluetooth daemon more convenient.
198 </para>
199
200 </sect2>
201
202 <sect2 role="configuration">
203 <title>Configuring BlueZ</title>
204
205 <sect3 id="bluez-config">
206 <title>Configuration Files</title>
207 <para>
208 <filename>/etc/bluetooth/main.conf</filename> is installed automatically
209 during the install. Additionally, there are two<!--three-->
210 supplementary configuration files.<!-- /etc/sysconfig/bluetooth is
211 installed as a part of the boot script below.--> In addition
212 you optionally can install the following as the
213 <systemitem class="username">root</systemitem> user:
214 </para>
215
216<screen role="root"><userinput>cat > /etc/bluetooth/rfcomm.conf &lt;&lt; "EOF"</userinput>
217<literal># rfcomm.conf
218# Set up the RFCOMM configuration of the Bluetooth subsystem in the Linux kernel.
219# Use one line per command
220# See the rfcomm man page for options
221
222
223# End of rfcomm.conf</literal>
224EOF</screen>
225
226<screen role="root"><userinput>cat > /etc/bluetooth/uart.conf &lt;&lt; "EOF"</userinput>
227<literal>#uart.conf
228# Attach serial devices via UART HCI to BlueZ stack
229# Use one line per device
230# See the hciattach man page for options
231
232# End of uart.conf</literal>
233EOF</screen>
234
235 <indexterm zone="bluez bluez-config">
236 <primary
237 sortas="e-etc-bluetooth-main.conf">/etc/bluetooth/main.conf</primary>
238 </indexterm>
239
240 </sect3>
241
242 <sect3 id="bluez-init">
243 <title>Boot Script</title>
244
245 <para>
246 To automatically start the <command>bluetoothd</command> daemon when the
247 system is rebooted, install the
248 <filename>/etc/rc.d/init.d/bluetooth</filename> bootscript from the
249 <xref linkend="bootscripts"/> package.
250 </para>
251
252 <indexterm zone="bluez bluez-init">
253 <primary sortas="f-bluetooth">bluetooth</primary>
254 </indexterm>
255
256<screen role="root"><userinput>make install-bluetooth</userinput></screen>
257
258 </sect3>
259
260 </sect2>
261
262 <sect2 role="content">
263 <title>Contents</title>
264
265 <segmentedlist>
266 <segtitle>Installed Programs</segtitle>
267 <segtitle>Installed Library</segtitle>
268 <segtitle>Installed Directories</segtitle>
269
270 <seglistitem>
271 <seg>
272 bccmd, bluemoon, bluetoothctl, bluetoothd, btmon, ciptool,
273 hciattach, hciconfig, hcidump, hcitool, hid2hci, l2ping,
274 l2test, mpris-proxy, obexd, rctest, rfcomm, and sdptool
275 </seg>
276 <seg>
277 libbluetooth.so
278 </seg>
279 <seg>
280 /etc/bluetooth,
281 /usr/include/bluetooth,
282 /usr/libexec/bluetooth, and
283 /usr/share/doc/bluez-&bluez-version;
284 </seg>
285 </seglistitem>
286 </segmentedlist>
287
288 <variablelist>
289 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
290 <?dbfo list-presentation="list"?>
291 <?dbhtml list-presentation="table"?>
292
293 <varlistentry id="bccmd">
294 <term><command>bccmd</command></term>
295 <listitem>
296 <para>
297 is used to issue BlueCore commands to Cambridge Silicon
298 Radio devices.
299 </para>
300 <indexterm zone="bluez bccmd">
301 <primary sortas="b-bccmd">bccmd</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="bluetoothd">
307 <term><command>bluetoothd</command></term>
308 <listitem>
309 <para>
310 is the Bluetooth daemon.
311 </para>
312 <indexterm zone="bluez bluetoothd">
313 <primary sortas="b-bluetoothd">bluetoothd</primary>
314 </indexterm>
315 </listitem>
316 </varlistentry>
317
318 <varlistentry id="ciptool">
319 <term><command>ciptool</command></term>
320 <listitem>
321 <para>
322 is used to set up, maintain, and inspect the CIP configuration
323 of the Bluetooth subsystem in the Linux kernel.
324 </para>
325 <indexterm zone="bluez ciptool">
326 <primary sortas="b-ciptool">ciptool</primary>
327 </indexterm>
328 </listitem>
329 </varlistentry>
330
331 <varlistentry id="hciattach">
332 <term><command>hciattach</command></term>
333 <listitem>
334 <para>
335 is used to attach a serial UART to the Bluetooth stack
336 as HCI transport interface.
337 </para>
338 <indexterm zone="bluez hciattach">
339 <primary sortas="b-hciattach">hciattach</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
344 <varlistentry id="hciconfig">
345 <term><command>hciconfig</command></term>
346 <listitem>
347 <para>
348 is used to configure Bluetooth devices.
349 </para>
350 <indexterm zone="bluez hciconfig">
351 <primary sortas="b-hciconfig">hciconfig</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="hcitool">
357 <term><command>hcitool</command></term>
358 <listitem>
359 <para>
360 is used to configure Bluetooth connections and send some
361 special command to Bluetooth devices.
362 </para>
363 <indexterm zone="bluez hcitool">
364 <primary sortas="b-hcitool">hcitool</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 <varlistentry id="hid2hci">
370 <term><command>hid2hci</command></term>
371 <listitem>
372 <para>
373 is used to set up switch supported Bluetooth devices into
374 the HCI mode and back.
375 </para>
376 <indexterm zone="bluez hid2hci">
377 <primary sortas="b-hid2hci">hid2hci</primary>
378 </indexterm>
379 </listitem>
380 </varlistentry>
381
382 <varlistentry id="l2ping">
383 <term><command>l2ping</command></term>
384 <listitem>
385 <para>
386 is used to send a L2CAP echo request to the Bluetooth MAC
387 address given in dotted hex notation.
388 </para>
389 <indexterm zone="bluez l2ping">
390 <primary sortas="b-l2ping">l2ping</primary>
391 </indexterm>
392 </listitem>
393 </varlistentry>
394
395 <varlistentry id="rctest">
396 <term><command>rctest</command></term>
397 <listitem>
398 <para>
399 is used to test RFCOMM communications on the
400 Bluetooth stack.
401 </para>
402 <indexterm zone="bluez rctest">
403 <primary sortas="b-rctest">rctest</primary>
404 </indexterm>
405 </listitem>
406 </varlistentry>
407
408 <varlistentry id="rfcomm">
409 <term><command>rfcomm</command></term>
410 <listitem>
411 <para>
412 is used to set up, maintain, and inspect the RFCOMM
413 configuration of the Bluetooth subsystem in the
414 Linux kernel.
415 </para>
416 <indexterm zone="bluez rfcomm">
417 <primary sortas="b-rfcomm">rfcomm</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 <varlistentry id="sdptool">
423 <term><command>sdptool</command></term>
424 <listitem>
425 <para>
426 is used to perform SDP queries on Bluetooth devices.
427 </para>
428 <indexterm zone="bluez sdptool">
429 <primary sortas="b-sdptool">sdptool</primary>
430 </indexterm>
431 </listitem>
432 </varlistentry>
433
434 <varlistentry id="libbluetooth">
435 <term><filename class="libraryfile">libbluetooth.so</filename></term>
436 <listitem>
437 <para>
438 contains the <application>BlueZ</application> 4 API functions.
439 </para>
440 <indexterm zone="bluez libbluetooth">
441 <primary sortas="c-libbluetooth">libbluetooth.so</primary>
442 </indexterm>
443 </listitem>
444 </varlistentry>
445 </variablelist>
446
447 </sect2>
448
449</sect1>
Note: See TracBrowser for help on using the repository browser.