问题标签 [glibmm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
154 浏览

c++ - 对使用 Glib 事件循环的程序使用 Google 测试

我正在编写一个在 Linux 中作为后台服务运行的程序。我正在用 C++ 编写它并使用 glibmm 进行事件循环。

该程序将拥有的唯一用户界面是 D-Bus 服务。

我想用谷歌测试为它写一些测试。我的计划是在程序本身实例化 D-Bus 服务的同时,测试代码还将实例化 D-Bus 客户端并通过 D-Bus 调用在程序中启动操作。

我想到的测试用例大多类似于“调用 D-Bus 方法并使用断言来查看使用某些参数调用某个方法”。测试的一个重要结果也是简单地看到测试不会崩溃。

我可以看到有关如何编写程序和测试的严格选项。例如,理论上,可以在 main() 中创建一次事件循环,或者在每个测试用例中单独创建事件循环。如果它只创建一次,理论上它仍然可以在每个测试用例中连续运行或启动和停止。我尝试用谷歌搜索示例,但只找到了使用 Qt 而不是 Glib 的东西。我不知道这是否会产生重大影响。

对于这样的案例,是否有任何现有的智慧?什么值得尝试,什么不值得尝试?还是我打算将谷歌测试用于它不适合的东西?

0 投票
1 回答
480 浏览

glib - 在 OS X 上未检测到 glibmm-2.4 安装

我正在从源代码构建一个应用程序,特别是 Ardor。在构建配置过程中,它退出并出现以下错误:

我使用自制软件进行包管理,所以我安装glibmmglib. 但是,构建配置过程仍然失败。

0 投票
0 回答
241 浏览

cmake - 不能告诉 cmake 使用 vcpkg 作为库链接

我将 Cmake 用于使用glibmm的跨平台项目。在Linux下,项目构建成功,没有任何问题(执行时工作正常)。

但是对于Windows 10Visual Studio 2019 (pro),我找不到如何构建项目。我用 vcpkg 安装了glibmm(“vcpkg install glibmm:x64-windows”和“vcpkg install glibmm:x86-windows”)

我将参数添加到我的 cmake 命令中-DCMAKE_TOOLCHAIN_FILE=D:\vcpkg\scripts\buildsystems\vcpkg.cmake

在主 CMakeLists.txt 文件中,以下几行不起作用。

然后我在脚本中修改glibmm库的名字来匹配安装文件的名字

但它同样失败。

我应该使用什么参数或什么指令将 glibmm 链接到我的项目?

0 投票
0 回答
24 浏览

c++ - 检查 Glib::RefPtr 是否班级是否为空

我想知道是否有诸如variantDict.empty()or之类的方法variantDict.size()。我从这个网站上查了一下,找不到任何东西。https://developer.gnome.org/glibmm/stable/classGlib_1_1VariantDict.html#a867a56baa952c4f98ecf21b01d3d00c3

如果有人知道检查 variantDict 是否为空的方法,请帮助我。谢谢!

0 投票
0 回答
22 浏览

c++ - 当使用 gdbus emit 发出信号时,Gio::DBus 的子类不会调用 on_signal()

我正在尝试在 linux 上用 C++ 实现一个简单的 dbus 本地 IPC 示例。现在我想简单地处理一个在总线上发出的信号:

为了处理这个信号,我按照以下示例实现了一个简单的 dbus 应用程序:

这是应用程序源代码:

我的主要问题是当 gdbus发出信号时应用程序不会触发on_signal回调:

  • 以下是应用程序使用的 dbus 连接的详细信息:

我有点困惑gdbus emit不包含 busname 的参数,但我希望这可以工作,并且我正在尝试找到丢失的部分。

我会很感激任何建议。

0 投票
1 回答
38 浏览

c++ - 为什么我的 DBus 调用会给出 UnknownMethod DBus 错误?

我正在尝试使用 DBus 调用来管理 systemd 服务。但是,我似乎无法找出进行方法调用的正确方法,因为无论我做什么都会引发 DBus 错误

谁能指出我哪里出错了?

0 投票
0 回答
85 浏览

c++ - 将 Glib 主循环集成到 libev 事件循环中(C++)

我正在尝试将Glib主循环集成到libev事件循环中。实际上,我正在使用他们的 C++ 包装器:glibmm[1] 和ev++[2]。主要思想取自EV::GlibPerl 模块 [3]。但是,当我尝试执行一些异步任务(例如,从文件系统读取文本文件)时,我的实现有时会挂起:

有任何想法吗?

0 投票
1 回答
19 浏览

c++ - Glib::Regex 返回垃圾,但等效的 C 函数工作正常

我正在尝试使用 Glib::Regex,但它不断返回垃圾。

这是代码的简化版本:

运行后,posX 和 posY 被垃圾填充。但是,在包装对象上使用 C 函数:

工作正常。我做错了什么还是这坏了。

0 投票
0 回答
57 浏览

android - 使用 gstreamermm 和 glibmm 为 android 构建 gstreamer

尝试构建 gstreamer 以及 gstreamermm 对 android 的支持。我没有看到任何为 android 构建 gstreamermm 的在线帮助。请您现在指导我如何构建它。