【问题标题】:GtkGlArea in Gtk+ 3.0: undefined referenceGtk+ 3.0 中的 GtkGlArea:未定义的引用
【发布时间】:2016-04-06 05:12:31
【问题描述】:

GtkGlArea 在 Gtk+3.0 的the Widget Gallery 中列出。它有official documentation,它表明我只需包含gtk/gtk.h 即可使用所需的小部件。

但我在 gtk+-3.0 包的头文件中找不到任何 OpenGL 提及。当然,我不能调用任何gtk_gl_area_* 函数而不偶然发现undefined reference 错误。

GtkGlArea 在 Gtk+ 3.0 中不可用吗?如果有,为什么会在官网上展示?

如果可用,我如何在我的 C 项目中使用它?

【问题讨论】:

    标签: c opengl gtk gtk3


    【解决方案1】:

    在 GTK+ 3.16 中添加了 GtkGLArea。如果你看the documentation page for GtkGLArea,你会看到

    自:3.16

    gtk_gl_area_new()下。

    如果您运行的是 GTK+ 3.14 或更低版本,则您无权访问 GtkGLArea。您的发行版可以告诉您安装了哪个版本。如果您的发行版确实提供了更新的版本,那么您将需要安装它。 (撰写本文时的当前版本是 GTK+ 3.18。)

    如果您没有 GTK+ 3.16 或更高版本,并且需要保留您使用的发行版版本,您有几个选择:

    • 找到别人的OpenGL小部件; here's oneand here's another
    • 使用 jhbuild 安装较新 GTK+ 版本的本地版本并使用它进行开发
    • 使用具有较新发行版的虚拟机进行开发

    编辑:您还可以通过从this list 中选择一个版本来查看您需要定位的特定 GTK+ 版本的文档。 (这同样适用于 developer.gnome.org 上的其他文档集。)如果您喜欢向后兼容,您还应该查看 the GDK_VERSION_MIN_REQUIRED and GDK_VERSION_MAX_ALLOWED macros

    【讨论】:

    • 谢谢!我的系统上确实安装了 3.14。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 2015-10-03
    • 2017-12-24
    • 2018-06-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多