其他分享
首页 > 其他分享> > D-Bus初识 环境搭建

D-Bus初识 环境搭建

作者:互联网

环境:Ubuntu18.04

一、下载

D-Bus源码下载地址:https://dbus.freedesktop.org/releases/dbus/

随便下载一个版本,比如我下载的是dbus-1.12.0.tar.gz(1.12.x为稳定版本)

 

二、编译和安装

编译和安装其实就是Linux源码包的常规三步操作(在INSTALL文件中有说明):

第一步:

./configure --prefix=/home/username/dbus-1.12.0/output

如果不指定prefix路径,默认为/usr。注意!作为学习使用我们一般仅仅需要使用头文件和库文件,因此最好指定安装在home下面,我曾经使用默认的prefix路径,并且使用sudo make install,导致我的电脑重启后无法开机,只能重装,应该是安装时替换了某些系统的文件导致系统出了问题。

config过程可能会有一些error出现,主要是为了告诉我们有哪些依赖没有安装,一般情况下这些error网上搜索一下都比较容易解决,因此就不在这里一一列出。

第二步:

make

第三步:

make install

按照prefix指定路径进行安装,安装后整个output目录结构如下:

.
├── bin
│   ├── dbus-cleanup-sockets
│   ├── dbus-daemon
│   ├── dbus-launch
│   ├── dbus-monitor
│   ├── dbus-run-session
│   ├── dbus-send
│   ├── dbus-test-tool
│   ├── dbus-update-activation-environment
│   └── dbus-uuidgen
├── etc
│   └── dbus-1
│       ├── session.conf
│       └── system.conf
├── include
│   └── dbus-1.0
│       └── dbus
│           ├── dbus-address.h
│           ├── dbus-bus.h
│           ├── dbus-connection.h
│           ├── dbus-errors.h
│           ├── dbus.h
│           ├── dbus-macros.h
│           ├── dbus-memory.h
│           ├── dbus-message.h
│           ├── dbus-misc.h
│           ├── dbus-pending-call.h
│           ├── dbus-protocol.h
│           ├── dbus-server.h
│           ├── dbus-shared.h
│           ├── dbus-signature.h
│           ├── dbus-syntax.h
│           ├── dbus-threads.h
│           └── dbus-types.h
├── lib
│   ├── cmake
│   │   └── DBus1
│   │       ├── DBus1Config.cmake
│   │       └── DBus1ConfigVersion.cmake
│   ├── dbus-1.0
│   │   └── include
│   │       └── dbus
│   │           └── dbus-arch-deps.h
│   ├── libdbus-1.a
│   ├── libdbus-1.la
│   ├── libdbus-1.so -> libdbus-1.so.3.19.3
│   ├── libdbus-1.so.3 -> libdbus-1.so.3.19.3
│   ├── libdbus-1.so.3.19.3
│   └── pkgconfig
│       └── dbus-1.pc
├── libexec
│   └── dbus-daemon-launch-helper
├── share
│   ├── dbus-1
│   │   ├── services
│   │   ├── session.conf
│   │   ├── session.d
│   │   ├── system.conf
│   │   ├── system.d
│   │   └── system-services
│   ├── doc
│   │   └── dbus
│   │       ├── diagram.png
│   │       ├── diagram.svg
│   │       ├── examples
│   │       │   ├── example-session-disable-stats.conf
│   │       │   ├── example-system-enable-stats.conf
│   │       │   └── GetAllMatchRules.py
│   │       └── system-activation.txt
│   └── xml
│       └── dbus-1
│           ├── busconfig.dtd
│           └── introspect.dtd
└── var
    ├── lib
    │   └── dbus
    └── run
        └── dbus

30 directories, 48 files

 

三、使用D-Bus头文件和库

我在本地写了一个demo用于测试运行,内容很简单就不写出来了,下面是编译命令:

gcc main.c -I/home/username/dbus-1.12.0/output/include/dbus-1.0 -I/home/username/dbus-1.12.0/output/lib/dbus-1.0/include -lrt -lpthread -L/home/username/dbus-1.12.0/output/lib -ldbus-1 -o main

简单解释一下

 

标签:libdbus,1.12,Bus,dbus,初识,home,output,include,搭建
来源: https://www.cnblogs.com/adorkable/p/12968268.html