BlueZ-5.50

Introduction à BlueZ

Le paquet BlueZ contient la pile de protocole Bluetooth pour Linux.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-9.0.

Informations sur le paquet

  • Téléchargement (HTTP) : https://www.kernel.org/pub/linux/bluetooth/bluez-5.50.tar.xz

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 du téléchargement : 8e35c67c81a55d3ad4c9f22280dae178

  • Taille du téléchargement : 1.7 Mo

  • Estimation de l'espace disque requis : 62 Mo (plus 15 Mo pour les tests)

  • Estimation du temps de construction : 0.2 SBU (avec parallélisme = 4 ; plus 0.3 SBU pour les tests)

Téléchargements supplémentaires

Dépendances de BlueZ

Requises

dbus-1.12.16, GLib-2.60.6 et libical-3.0.5

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/bluez

Configuration du noyau

Si vous construisez ce paquet pour utiliser des appareils bluetooth (plutôt qu'en tant que dépendance), activez les options suivantes dans la configuration du noyau, ainsi que les options sous le paragraphe suivant si vous lancerez les tests, et recompilez le noyau si nécessaire :

[*] Networking support --->                [CONFIG_NET]
  </M> Bluetooth subsystem support --->    [CONFIG_BT]
    <*/M> RFCOMM protocol support          [CONFIG_BT_RFCOMM]
    [*]   RFCOMM TTY support               [CONFIG_BT_RFCOMM_TTY]
    <*/M> BNEP protocol support            [CONFIG_BT_BNEP]
    [*]   Multicast filter support         [CONFIG_BT_BNEP_MC_FILTER]
    [*]   Protocol filter support          [CONFIG_BT_BNEP_PROTO_FILTER]
    <*/M> HIDP protocol support            [CONFIG_BT_HIDP]
        Bluetooth device drivers --->
          (Select the appropriate drivers for your Bluetooth hardware)

  <*/M> RF switch subsystem support --->   [CONFIG_RFKILL]

Si vous construisez ce paquet (même si vous ne le traitez qu'en tant que dépendance), vous devrez activer les options suivantes dans la configuration du noyau et recompilez le noyau si nécessaire :

[*] Networking support --->                                     [CONFIG_NET]
-*- Cryptographic API --->                                      [CONFIG_CRYPTO]
  </M> User-space interface for hash algorithms                 [CONFIG_CRYPTO_USER_API_HASH]
  </M> User-space interface for symmetric key cipher algorithms [CONFIG_CRYPTO_USER_API_SKCIPHER]

Installation de BlueZ

Si vous voulez utiliser BlueZ avec gnome-bluetooth ou kde bluedevil, appliquez le correctif suivant :

patch -Np1 -i ../bluez-5.50-obexd_without_systemd-1.patch

Installez BlueZ en lançant les commandes suivantes :

./configure --prefix=/usr         \
            --sysconfdir=/etc     \
            --localstatedir=/var  \
            --enable-library      \
            --disable-systemd     &&
make

Pour tester les résultats, tapez : make check.

Maintenant, en tant qu'utilisateur root :

make install &&
ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin

Installez le fichier principal de configuration en tant qu'utilisateur root :

install -v -dm755 /etc/bluetooth &&
install -v -m644 src/main.conf /etc/bluetooth/main.conf

Si vous le souhaitez, installez la documentation de l'API en tant qu'utilisateur root :

install -v -dm755 /usr/share/doc/bluez-5.50 &&
install -v -m644 doc/*.txt /usr/share/doc/bluez-5.50

Explication des commandes

--enable-library :: Ce paramètre active la construction de la bibliothèque de compatibilité BlueZ 4 qui est requises par certaines applications.

--disable-systemd : Ce paramètre est nécessaire car systemd ne fait pas partie de LFS/BLFS. Si vous utilisez systemd, enlevez ce paramètre.

ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin : Cette commande donne accès au démon bluetooth de façon plus cohérente.

Configuration de BlueZ

Fichiers de configuration

/etc/bluetooth/main.conf est installé automatiquement pendant l'installation. En supplément, il y a trois fichiers de configuration en plus. /etc/sysconfig/bluetooth est installé comme une partie des scripts de démarrage. De plus, vous pouvez facultativement installer la suite en tant qu'utilisateur root :

cat > /etc/bluetooth/rfcomm.conf << "EOF"
# Start rfcomm.conf
# Set up the RFCOMM configuration of the Bluetooth subsystem in the Linux kernel.
# Use one line per command
# See the rfcomm man page for options


# End of rfcomm.conf
EOF
cat > /etc/bluetooth/uart.conf << "EOF"
# Start uart.conf
# Attach serial devices via UART HCI to BlueZ stack
# Use one line per device
# See the hciattach man page for options

# End of uart.conf
EOF

Scripts de démarrage

Pour démarrer automatiquement le démon bluetoothd quand le système est redémarré, installez le script de démarrage /etc/rc.d/init.d/bluetooth depuis le paquet blfs-bootscripts-20190609.

make install-bluetooth

Contenu

Programmes installés: bccmd, bluemoon, bluetoothctl, bluetoothd (lien symbolique), btattach, btmon, hex2hcd, l2ping, l2test, mpris-proxy et rctest
Bibliothèque installée: libbluetooth.so
Répertoires installés: /etc/bluetooth, /usr/{include,libexec}/bluetooth et /usr/share/doc/bluez-5.50

Descriptions courtes

bccmd

est utilisé pour taper des commandes BlueCore sur les périphériques Cambridge Silicon Radio.

bluemoon

est un utilitaire de configuration de Bluemoon.

bluetoothctl

est le programme de contrôle interactif de Bluetooth.

bluetoothd

est le démon Bluetooth.

btmon

fournit l'accès à l'infrastructure de surveillance de Bluetooth pour lire les traces HCI.

hex2hcd

est utilisé pour convertir un fichier utilisé par les périphériques Broadcom au format hcd (Broadcom bluetooth firmware).

l2ping

est utilisé pour envoyer des demandes d'écho L2CAP à l'adresse MAC Bluetooth donné en notation hexadécimale.

l2test

est le programme de tests de L2CAP.

rctest

est utilisé pour tester les communications RFCOMM de la pile Bluetooth.

libbluetooth.so

contient les fonctions de l'API de BlueZ 4.

Last updated on 2019-08-18 20:33:32 +0000