glib.h and gtk.h not found

房东的猫 提交于 2019-12-05 04:32:28

问题


hi every one i have a program in which i have include

  • gtk/gtk.h
  • glib.h

i have used commands

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

but still getting error that glib not found ans gtk/gtk.h not found. i am first time using this gtk . no idea how it works how to install it kindly help me thanks

i am doing c programming


回答1:


The command you're supposed to use (in more recent releases of linux/gtk) is pkg-config, not gtk-config. gtk-config is intended for pre 2.0 gtk development.

Consider the file you're compiling is called foo.c, to compile it under gtk-2.0, you would use, from the command line the command:

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

This should compile, and give you a file foo, that can be executed.

but really, use a makefile, as this stuff is a pain to keep typing. I would write out a sample makefile, but there are rules that need to be followed in the formatting of them that makes it difficult to type in the editor window.

# 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)

This defines a simple rule saying to make foo, it depends on foo.c, so of foo.c is newer than foo, it will be rebuilt. Where I write 'TAB HERE NOT SPACES' it must be a tab character, and cannot be a set of space characters.




回答2:


type "locate glib.h" to determine file's location (assuming a contemporary linux distribution - your post doesn't provide much information).

Then ensure the path to glib.h is properly specified in your Makefile. (You do have a Makefile, don't you?) Perform the same steps for gtk.h.




回答3:


Please read the official documentation. It explains how to compile GTK applications. Basically to compile a hello.c file to generate a hello program, you'll type:

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


来源:https://stackoverflow.com/questions/5277284/glib-h-and-gtk-h-not-found

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!