glib.h and gtk.h not found

18,060

Solution 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.

Solution 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.

Solution 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
Share:
18,060
tariq
Author by

tariq

Updated on June 04, 2022

Comments

  • tariq
    tariq almost 2 years

    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