C 在Debian上编译GTK 3应用程序

C 在Debian上编译GTK 3应用程序,c,linux,debian,gtk,gtk3,C,Linux,Debian,Gtk,Gtk3,我正试图在我的Debian桌面上编译一个GTK程序。我安装了libgtk-3-dev和所有这些,但是当我编译程序时,我得到了以下错误: $ gcc -o client client.c `pkg-config --cflags --libs glib-2.0` client.c:6:10: fatal error: gtk/gtk.h: No such file or directory 6 | #include <gtk/gtk.h> | ^~

我正试图在我的Debian桌面上编译一个GTK程序。我安装了libgtk-3-dev和所有这些,但是当我编译程序时,我得到了以下错误:

$ gcc -o client client.c `pkg-config --cflags --libs glib-2.0`
client.c:6:10: fatal error: gtk/gtk.h: No such file or directory
    6 | #include <gtk/gtk.h>
      |          ^~~~~~~~~~~
compilation terminated.
$ gcc -o client -I/usr/include/gtk-3.0 -I/usr/include/glib-2.0 client.c `pkg-config --cflags $ --libs glib-2.0`
In file included from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-3.0/gdk/gdk.h:32,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from client.c:6:
/usr/include/gtk-3.0/gdk/gdktypes.h:35:10: fatal error: pango/pango.h: No such file or directory
   35 | #include <pango/pango.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.

就像我选择的编译标志的任何组合一样,我得到了某种错误,所有这些都是由Debian将头放在非标准子目录中引起的。这不是我在搞乱他们,这是apt为我安装的。

您要问的是
pkg config
对于glib,您必须问
pkg config
关于GTK+库:

gcc -o client client.c `pkg-config --cflags --libs gtk+-3.0`

您可以在命令行中保留
glib-2.0
,但由于GTK+依赖于glib,因此它已经包含在内。

您要询问
pkg config
关于glib,必须询问
pkg config
关于GTK+库:

gcc -o client client.c `pkg-config --cflags --libs gtk+-3.0`
您可以在命令行中保留
glib-2.0
,但由于GTK+依赖于glib,因此已经包含了它