选择跨发行版的DBus实现

时间:2018-11-17 16:34:33

标签: linux dbus bluez

我正在尝试编写一个systemd守护程序,该守护程序应该在SDP中注册新服务,侦听RFCOMM连接并与其他蓝牙设备交换一些信息。守护程序应尽可能独立于发行版。因为我想使用BlueZ5,所以我需要使用DBus(这对我来说是新的)。

所以我的问题来了,选择GDBus是否会使我的守护程序仅在安装了GNOME的系统上运行?还是类似地,QtDBus仅适用于KDE吗?如果是,我应该怎么做才能在多个发行版上运行它?

1 个答案:

答案 0 :(得分:2)

freedesktop wiki

  

低级libdbus参考库没有必需的依赖项;   参考总线守护程序唯一需要的依赖项是XML解析器   (外籍人士)。特定于特定框架(Qt,   GLib,Java,C#,Python等)添加了更多依赖关系,但可以使更多依赖关系   假设,因此使用起来简单得多。绑定进化   与低级libdbus分开,因此有些更成熟,并且   ABI比其他稳定;检查文档以了解您打算绑定的内容   使用。

因此您可以根据需要独立于平台。

Parthiban在评论中的建议可能是最好的选择,因为即使libdbus开发人员也建议使用GDBus作为更好的选择。

here可以很好地概述您的选项。