6

I have never built a project in Ubuntu before and I am trying to come to grips with the GNU build tools and process.

When I try to make I get the glib.h - no such file or directory.

This is the output of pkg-config --cflags --libs glib-2.0

-I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include  -L/usr/lib/i386-linux-gnu -lglib-2.0 

I presume the above output are the compiler flags make uses?

Any ideas?

Braiam
  • 66,947
  • 30
  • 177
  • 264
SuperJumbo
  • 579
  • 2
  • 5
  • 7

3 Answers3

9

It appears that gcc can't find the glib.h which is a part of the libglib2.0-dev package. Make sure you've installed libgtk2.0-0-dev package (which depends on libglib2.0-dev) and try again.

Lekensteyn
  • 171,743
  • 65
  • 311
  • 401
Marco Ceppi
  • 47,783
  • 30
  • 172
  • 197
  • I have libgtk2.0-dev installed. – SuperJumbo Jun 14 '11 at 02:33
  • 1
    emmm, I'm installed the libgtk2.0-0-dev library and not work, appear the message: glib-gprint.c:24:18: error fatal: glib.h: no such file or directory for any question I'm got xubuntu 11.10 – matias Dec 09 '11 at 13:24
4

You need to tell make to use pkg-config to find out the compiler flags. Like so

CFLAGS = `pkg-config --cflags glib-2.0` 
LDLIBS = `pkg-config --libs glib-2.0`

make will execute pkg-config and use the output to fill in CFLAGS and LDLIBS

RubenLaguna
  • 741
  • 1
  • 6
  • 10
3

You need to add pkg-config --cflags --libs glib-2.0 in make file. It should look like this:

gcc `pkg-config --cflags --libs glib-2.0` file.c
Zanna
  • 69,223
  • 56
  • 216
  • 327
Sea turtle
  • 159
  • 1
  • 1
  • 3
  • tried adding that to the beginning and end of my Makefile, got something like this (only line number changes) both times: `Makefile:17: *** missing separator. Stop.` – boulder_ruby Feb 01 '14 at 20:46