D-Bus在Windows下的创建步骤(qt上使用DBUS)

本文详细介绍了如何下载并配置D-Bus和相关依赖,如CMake和expat库,特别强调了解决CMake中找不到expat路径的问题,以及编译生成后的库和配置文件的使用方法,包括将session.conf和动态库放置到正确目录以使QT能正常运行D-Bus。
摘要由CSDN通过智能技术生成

网上不全了,我写一个全一点的(耗时2天)

  1. 下载工具及源码

D-Bus用到的XML解析器

DBUS源码下载

CMake下载工具下载

  1. 安装CMake,打开cmake-gui
    解压dbus,这里我吧文件夹重命名为dbus,看着方便,解压expat到dbus文件夹
    为了方便,expat的内容统一放到expat文件夹下
    DBUS文件夹内部情况
    写好路径开始生成配置
  2. 修改错误,默认情况会有一个错误,工具找不到expat文件夹和库(上图红色部分错误提示),如果会写CMakefiles.txt可以直接修改这个文件后在编译就不会出现这个错误。本人不懂CMakefiles.txt。所以折腾了两天才搞出来。

错误原因EXPAT_INCLUDE_DIR不存在

  1. 修改错误,把【Advanced】打开
    重新制定路径
    4.1 修改路径EXPAT_INCLUDE_DIR是头文件路径,EXPAT_LIBRARY是静态库路径(删除换从后下次编译还需要指定)
    第一条是头文件路径,第二条是静态库路径

  2. 重新点击【Configure】–>【Generate】–>工程生成成功–>【Open Project】打开VS 开始编译生成

  3. 生成sln vs编译 把这个session.conf 拷贝到dbus-daemon.exe程序同目录下,还有expat的动态库
    左边拷贝到右边

  4. 运行cmd命令行运行dbus-daemon.exe --config-file=session.conf

  5. 把需要的动态库拷贝到QT生成路径下,启动qt即可使用了

注:(没有测试不知道行不)
修改一下 D:\dbus\cmake\CMakeLists.txt中的内容

在第一行project(dbus)后面插入如下内容
set(EXPAT_LIBRARIES “D:/DBUS/Expat/bin/libexpat.lib”)
set(EXPAT_INCLUDE_DIR " D:/DBUS/Expat/Source/lib")

#这是注释,如果使用Mingw32环境编译时的设置
#set(EXPAT_LIBRARIES “D:/expat/lib/libexpat.a”)
#set(EXPAT_INCLUDE_DIR “D:/expat/include”)

set(LIBEXPAT_FOUND ON)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值