G_DECLARE_FINAL_TYPE()引发编译器错误

时间:2018-07-06 09:11:35

标签: gtk3 glib gobject

我已经用C和GTK3编写了一个程序。我正在使用Arch Linux,并且一切正常。但是,我还必须在较旧的Ubuntu计算机上使用我的程序。

  • gtk + -3.0 3.10.8
  • GCC 4.8.4

使用此设置,程序将无法编译 在自定义GTK小部件的标题文件中,我有:

Burstable

编译时会抛出错误消息: 在GtkListBoxRow之前的')',位于G_DECLARE_FINAL_TYPE宏的行中。

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

G_DECLARE_FINAL_TYPE已在2.44版中添加到GLib(请参见the documentation)。如果要在旧版本的Ubuntu上进行编译,则要么必须为该版本的Ubuntu掌握GLib 2.44(或更高版本)的反向端口,然后针对该版本进行编译;否则您将不得不修改代码以不使用版本2.40之后添加的任何GLib API。