以嵌入式开发板上使用gdbus为例说明,在使用gdbus进程间通信之前,需要再开发板上进行一些部署,等这些工作完成OK之后,再验证自己编写的代码。
我的步骤如下:
1. 交叉编译glib库及其依赖库。
2. 交叉编译dbus及其依赖库。
3. 将步骤1和步骤2中相关的动态库上板。
4. 将步骤2中生成的dbus二进制上板。
(注意可能存在跟这些二进制同名的脚本,脚本上板会报错出现主机路径。)
5. 将session和system的配置文件上板,并调整配置信息。
6. 简单验证dbus的命令是否正常工作。
1) 启动dbus-daemon
dbus-daemon --session --print-address >/tmp/dbus-address &
2)设置环境变量
export DBUS_SESSION_BUS_ADDRESS=`cat /tmp/dbus-address`
3)发送一个dbus消息,看是否能成功发送并正确输出信息。
dbus-send --session --type=method_call --print-reply --dest=org.freedesktop.DBus / org.freedesktop.DBus.Introspectable.Introspect