【问题标题】:Getting “gtk_settings_get_for_screen: assertion ‘GDK_IS_SCREEN (screen)’ failed” when running GTKmm program运行 GTKmm 程序时出现“gtk_settings_get_for_screen: assertion ‘GDK_IS_SCREEN (screen)’ failed”
【发布时间】:2018-01-12 15:02:10
【问题描述】:

我尝试在 Lubuntu 16.04 上通过 x11vnc 运行程序使用 GTKmm 库。当我在终端中启动它时,它会引发错误:

(process:6981): Gtk-CRITICAL **: gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:6981): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion 'G_IS_OBJECT (object)' failed
Segmentation fault (core dumped)

我尝试调试代码,但是在main函数的第一行之前出现了分段错误。

【问题讨论】:

    标签: c++ ubuntu segmentation-fault gtkmm gdk


    【解决方案1】:

    我也遇到了类似的问题。花了两天时间才解决。问题在于一些未分配的指针。如果您在此处发布代码,我可能会提供更好的帮助。
    但是,这里有一些可能的原因:
    1. 您使用了对对象的引用,作为Gtk::Window 类的数据成员。您可能想改用指针,并在构造函数中使用内存对其进行初始化。
    2. 你的一个函数应该返回一个指向对象的指针,但它没有返回它。在这种情况下,调用者可能会得到一个空指针。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 2020-01-19
      • 2020-09-29
      • 1970-01-01
      • 1970-01-01
      • 2020-11-18
      相关资源
      最近更新 更多