![Как скомпилировать Bluez btmgmt на Ubuntu Core?](https://rvso.com/image/1000919/%D0%9A%D0%B0%D0%BA%20%D1%81%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20Bluez%20btmgmt%20%D0%BD%D0%B0%20Ubuntu%20Core%3F.png)
Я переношу скрипт из Ubuntu 16.04 в Ubuntu Core 16. В процессе я также переношу с Bluez 5.37 на версию, поставляемую с пакетом Bluez, 5.44-2.
В оснастке Bluez btmgmt
инструмент не скомпилирован заранее. Я использовал его способность быть скриптованным с командами типа
rm -rf /var/lib/bluetooth/* >/dev/null 2>&1
btmgmt --index $hci ltks >/dev/null 2>&1
btmgmt --index $hci power off >/dev/null 2>&1
btmgmt --index $hci power on >/dev/null 2>&1
btmgmt --index $hci le on >/dev/null 2>&1
где $hci — это интерфейс btle.
Есть ли на данный момент альтернатива, которую можно использовать в скриптах, которую я не нашел, просматривая man-страницы инструментов Bluez, к которым у меня есть доступ, или мне следует попытаться скомпилировать инструмент btmgmt
, и если да, то как?
Обновление прогресса 1:
Я начал играть с классической защелкой, предназначенной для использования при разработке новых защелок и описанной вСоздайте свой собственный урок по работе с Snap. Это позволило мне выполнить apt-get install bluez, который включал инструмент btmgmt. Моя проблема теперь в том, что я не могу выключить и включить hci0 без перезагрузки всего устройства, что сводит на нет смысл скрипта. Кроме того, когда он включен, я все еще не могу успешно подключиться к желаемому устройству bt.
Обновление прогресса 2:
С помощью этой sudo snap revert bluez
команды мне удалось откатить собственную версию snap до версии 5.37, но я по-прежнему не могу найти btmgmt или исходный код для его компиляции в системе.