如何在 Ubuntu Core 上编译 Bluez btmgmt?

如何在 Ubuntu Core 上编译 Bluez btmgmt?

我正在将脚本从 Ubuntu 16.04 移至 Ubuntu Core 16。在此过程中,我还从 Bluez 5.37 移至 Bluez snap 提供的版本 5.44-2。

在 Bluez snap 中,该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 接口。

是否存在我通过浏览我可以访问的 Bluez 工具的手册页而没有找到的当前可编写脚本的替代方案,或者我是否应该尝试编译该btmgmt工具,如果是,该如何做?

进度更新1:

我已经开始使用经典的 snap,旨在用于开发新的 snap,并在构建您自己的 snap 教程。它允许我使用 apt-get install bluez,其中包括 btmgmt 工具。我现在的问题是,如果不重新启动整个盒子,我就无法对 hci0 进行电源循环,这违背了脚本的初衷。此外,当它打开时,我仍然无法成功与我想要的 bt 设备配对。

进度更新2:

通过该sudo snap revert bluez命令,我能够将本机快照回滚到 5.37,但我仍然无法找到 btmgmt 或在系统上编译它的源代码。

相关内容