2017-11-08 1238
D-Bus 是一个消息总线系统,应用之间相互通信的简单方式。D-Bus 支持系统守护进程(例如添加新硬件设备或打印队列更改事件)和每个用户的登录会话守护进程 (例如用户应用程序之间的一般进程间通信)。另外,消息总线在通用一对一消息传递框架之上构建, 该框架使得任意两个应用可以直接通信(而不需要通过消息总线守护进程)。
准备编译 D-Bus:
./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --docdir=/usr/share/doc/dbus-1.8.16 \ --with-console-auth-dir=/run/console
配置选项的含义:
--with-console-auth-dir=/run/console
该选项指定 ConsoleKit 验证目录的位置。
编译软件包:
make
该软件包没有测试套件,但要求 LFS 中没有的几个软件包。运行测试套件的命令可以在 BLFS 指南 http://www.linuxfromscratch.org/blfs/view/systemd/general/dbus.html 中找到。
安装软件包:
make install
需要移动共享库到 /lib,因此需要重建 /usr/lib 中的 .so 文件:
/lib
/usr/lib
.so
mv -v /usr/lib/libdbus-1.so.* /lib ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so
创建符号链接,使得 D-Bus 和 systemd 可以使用相同的 machine-id 文件:
machine-id
ln -sfv /etc/machine-id /var/lib/dbus
dbus-cleanup-sockets
用于清理目录中残留的套接字
dbus-daemon
D-Bus 消息总线守护进程
dbus-launch
从 shell 脚本启动 dbus-daemon
dbus-monitor
监控 D-Bus 消息总线中传送的消息
dbus-run-session
从 shell 脚本中启动一个 dbus-daemon 会话总线实例并在会话中启动指定程序
dbus-send
发送消息到 D-Bus 消息总线
dbus-uuidgen
生成一个通用唯一 ID
libdbus-1
包含用于和 D-Bus 消息总线交互的 API 函数
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。