使用 aptitude 安装 GTK 开发环境

Cha*_*l72 3 apt gtk

我正在尝试在 Ubuntu 上安装 GTK 开发环境,但很难安装它。

基本上,我的目标是简单地编译一个包含头文件的 C 文件<gtk/gtk.h>,这样我就可以开始修改:

#include <gtk/gtk.h>

int main() { }
Run Code Online (Sandbox Code Playgroud)

所以,这个答案说你可以简单地 apt-get installgnome-core-devel build-essential来安装开发环境。好的,所以我试过了,当我尝试编译上面的代码时,我得到了,编译器抱怨它找不到文件gtk/gtk.h

所以,我添加/usr/include/gtk-2.0/到 Path 并再次编译。现在它抱怨它找不到另一个文件/gio/gio.h

这个文件甚至在我的系统上都不存在,所以在谷歌搜索 gio.h 和 apt-getting 其他库之后,我设法安装了它。我再次尝试编译,这次编译器找不到/usr/include/glib-2.0/glib/gtypes.h.

在这一点上,我认为简单地安装 GTK 开发环境之类的东西不可能这么困难,这是一个相当流行的包。我想我的系统可能有问题,所以我在不同的 Ubuntu 安装上尝试了这个,但遇到了同样的问题。

那么,安装 GTK 需要哪些确切的软件包?我是否需要手动配置我的包含路径,还是应该自动发生?

Sav*_*vic 6

GTK+有两个版本,gtk+2和gtk+3。你应该选择或至少更喜欢 gtk+3,因为过渡已经开始了一段时间。

这里有一些 gtk3 示例:http : //developer.gnome.org/gtk3/3.2/gtk-getting-started.html

#include <gtk/gtk.h>

int
main (int   argc,
char *argv[])
{
  GtkWidget *window;

  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

  g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);

  gtk_widget_show (window);

  gtk_main ();

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

要查找哪个包提供了文件,请访问http://packages.ubuntu.com并向下滚动到“搜索包的内容”。输入文件名作为关键字并搜索文件。

gtk.h 由两个包提供:

/usr/include/gtk-2.0/gtk/gtk.h libgtk2.0-dev

/usr/include/gtk-3.0/gtk/gtk.h libgtk-3-dev

安装libgtk-3-devgtk+3。

最后,请注意您执行的命令(请参阅我上面提到的链接中的示例):

gcc `pkg-config --cflags gtk+-3.0` -o window-default window-default.c `pkg-config --libs gtk+-3.0`
Run Code Online (Sandbox Code Playgroud)

保持参数的顺序相同。您可能需要添加-Wall以显示需要修复的任何错误:

gcc `pkg-config --cflags gtk+-3.0` -o window-default window-default.c -Wall `pkg-config --libs gtk+-3.0`
Run Code Online (Sandbox Code Playgroud)

如果您仍然遇到问题,请显示/附加您使用的命令以及为上述问题提供的输出。