Openwrt 下 移植QT的应用,前端LUCI和应用交互 用到了 QT 的DBUS组件
在PC上测试OK,移植到openwrt 下发现了一些问题。
1.使用session bus 的话,编译QT5的时候 默认是-dbus-runtime 需要 DBUS_SESSION_BUS_ADDRESS 这个环境变量,这个环境变量 在系统启动的rc.d的脚本中export 并不会生效。
还需要修改dbus 的session.d 配置文件,设置好正确的目录
使用/etc/profile.d/ 增加.sh export 只是对登录的用户起作用。
前端的lua 调用 编写的.so的 dbus 库并不能正确的起作用。
2.编译改成system bus ,默认的dbus 组件 的 init.d 文件即可起作用
3.最后的测试:
应用程序开启了DBUS 服务 增加了调用的接口,最终前端可以获取进程的DBUS 反回JSON 格式的 String 信息。
OpenWrt QT 应用 和dbus的坑
最新推荐文章于 2025-02-04 15:34:02 发布