找不到glib.h和gtk.h

时间:2011-03-11 19:12:50

标签: c linux gtk glib gtk2

我每个人都有一个程序,其中包括

  • GTK / gtk.h
  • glib.h

我使用了命令

sudo apt-get install libgtk2.0-dev glib 
sudo apt-get install glade

但仍然没有找到glib未找到ans gtk / gtk.h的错误。我是第一次使用这个gtk。不知道如何安装它如何工作 请帮助我谢谢

我在做c编程

3 个答案:

答案 0 :(得分:10)

你应该使用的命令(在最近的linux / gtk版本中)是pkg-config,而不是gtk-config。 gtk-config适用于2.0 gtk之前的开发。

考虑你正在编译的文件名为foo.c,要在gtk-2.0下编译它,你可以从命令行使用命令:

gcc `pkg-config --cflags glib-2.0 gtk+-2.0` foo.c -o foo `pkg-config --libs glib-2.0 gtk+-2.0`

这应该编译,并给你一个文件foo,可以执行。

但实际上,使用makefile,因为这样的东西很难打字。我会写出一个示例makefile,但是在格式化时需要遵循规则,这使得在编辑器窗口中输入很困难。

# Sample Makefile
CFLAGS := $(shell pkg-config --cflags glib-2.0 gtk+-2.0)
LDFLAGS := $(shell pkg-config --libs glib-2.0 gtk+-2.0)

foo: foo.c
<TAB HERE NOT SPACES>$(CC) $(CFLAGS) $< -o $@ $(LDFLAGS)

这定义了一个简单的规则,说要制作foo,它取决于foo.c,所以foo.c比foo更新,它将被重建。我在这里写'TAB HERE NOT SPACES'它必须是一个制表符,并且不能是一组空格字符。

答案 1 :(得分:2)

键入“locate glib.h”来确定文件的位置(假设当前的linux发行版 - 你的帖子没有提供太多信息)。

然后确保在Makefile中正确指定了glib.h的路径。 (你有一个Makefile,不是吗?)对gtk.h执行相同的步骤。

答案 2 :(得分:1)

请阅读官方文档。它解释了how to compile GTK applications。 基本上要编译hello.c文件以生成hello程序,您需要输入:

gcc `pkg-config --cflags --libs gtk+-2.0` hello.c -o hello