运行GTKmm程序时“gtk_settings_get_for_screen:断言'GDK_IS_SCREEN(屏幕)'失败”

时间:2018-01-12 15:02:10

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

我尝试在x11vnc上运行程序使用Lubuntu 16.04上的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函数的第一行之前。

1 个答案:

答案 0 :(得分:0)

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