安装
-
命令行输入:
sudo apt-get install dbus
-
在程序中引用dbus/dbus.h,报错,提示没有该文件。于是在/usr/include下查找,发现dbus的目录名为:/usr/include/dbus-1.0/dbus。 于是在/usr/include下做个软链接:
sudo ln dbus-1.0/dbus/ -s dbus
-
再次运行程序,原来错误没有了,新的错误出现了,提示dbus-arch-deps.h文件找不到。在系统下搜索该文件位置,然后复制到/usr/include/dbus目录下。
locate dbus-arch-deps.h
查到的结果为
/usr/lib/i386-linux-gnu/dbus-1.0/include/dbus/dbus-arch-deps.h
然后,在/usr/include/dbus目录下,输入:
cp /usr/lib/i386-linux-gnu/dbus-1.0/include/dbus/dbus-arch-deps.h ./
再次运行程序,就不报错了。可以正常使用dbus了。
简介
进程间使用D-Bus通信
D-Bus是一种高级的进程间通信机制,它由freedesktop.org项目提供,使用GPL许可证发行。D-Bus最主要的用途是在Linux桌面环境为进程提供通信,同时能将Linux桌面环境和Linux内核事件作为消息传递到进程。D-Bus的主要概念为总线,注册后的进程可通过总线接收或传递消息,进程也可注册后等待内核事件响应,例如等待网络状态的转变或者计算机发出关机指令。D-Bus已被大多数Linux发行版所采用,开发者可使用D-Bus实现各种复杂的进程间通信任务。