Makefile for GTK2 programs?
- From: Juhana Sadeharju <kouhia nic funet fi>
- To: gtk-list gnome org
- Subject: Makefile for GTK2 programs?
- Date: Wed, 18 Aug 2010 10:26:45 +0300
What CFLAGS and LIBS I should use in Makefiles?
I installed GTK2 to home directory, and thus I won't use lddconfig.
My programs should take all from ~/gtk2/, and nothing from
/usr/include/gtk-1.2/ and nothing gtk-related from /usr/lib/.
GTK2 does not have gtk-config program. It made things easier
in gtk1.2:
CC=gcc -O2 -Wall
CFLAGS = `gtk-config --cflags`
LIBS= `gtk-config --libs` -lm -ljpeg -lpng
Is there away to get all CFLAGS and LIBS by checking the pkgconfig file?
~/gtk2/lib/pkgconfig/gtk+-2.0.pc
I have now the following in Makefile. Very messy. It does not work;
I get errors: undefined reference to `gtk_text_view_new' and the like.
CC=gcc -O2 -Wall
CFLAGS= -I/home/juhana/gtk2/include/glib-2.0 -I/home/juhana/gtk2/include/gtk-2.0 -I/home/juhana/gtk2/lib/glib-2.0/include -I/home/juhana/gtk2/include/cairo -I/home/juhana/gtk2/include/pango-1.0 -I/home/juhana/gtk2/lib/gtk-2.0/include -I/home/juhana/gtk2/include/atk-1.0
LIBS= -L/home/juhana/gtk2/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm -ljpeg -lpng
O_ESPBROWSER=mylib/filesdirs.o mylib/buffer.o mylib/image.o mylib/gsl_taus.o mylib/clock.o mylib/mmapfile.o mylib/sprint.o mylib/arrays.o espbrowser.o
all:: espbrowser
espbrowser: $(O_ESPBROWSER)
$(CC) $(CFLAGS) -o espbrowser $(O_ESPBROWSER) $(LIBS)
I use this include command in the C code:
#include "/home/juhana/gtk2/include/gtk-2.0/gtk/gtk.h"
I'm afraid it won't help because gtk.h uses
#include <gdk/gdk.h>
which may be "/usr/include/gtk-1.2/gdk/gdk.h".
How the linked ld works? My programs are simple. Perhaps I could
write a script to compile and link everything explicitly. But this
include file business worries me still.
This is so frustating. I will return to GTK 1.2 soon.
First Ubuntu failed to install GTK2, and now this!
I could start writing my programs under demos/gtk-demo/ and compile
the demo. But then I don't understand how to add my mylib/mmapfile.o
etc. files to the configure system. :-(
Help needed.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]