[Debichem-devel] Bug#621946: gamgi: FTBFS: /usr/include/gtk-2.0/gdk/gdkpixbuf.h:37:35: fatal error: gdk-pixbuf/gdk-pixbuf.h: No such file or directory

Steve Langasek steve.langasek at canonical.com
Sat Apr 16 06:41:19 UTC 2011


tags 621946 patch
user ubuntu-devel at lists.ubuntu.com
usertags 621946 ubuntu-patch origin-ubuntu natty
user vorlon at debian.org
usertags multiarch
thanks

Hi Daniel,

The attached patch addresses this build failure, and also a subsequent build
failure that occurs when trying to build gamgi in a multiarch environment. 
The gamgi upstream build rules should not hard-code these paths to header
files; the GTK stack uses pkg-config as a standard interface for finding the
necessary compiler and linker flags for a given library.  This also removes
the need to hard-code paths for libraries such as atk and pango, which gamgi
is *not* using directly - these will be pulled in automatically via
pkg-config if they're needed.

Please consider applying this patch to the Debian package.

Thanks,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek at ubuntu.com                                     vorlon at debian.org
-------------- next part --------------
Index: gamgi-0.15/src/make_local
===================================================================
--- gamgi-0.15.orig/src/make_local
+++ gamgi-0.15/src/make_local
@@ -19,26 +19,20 @@
 #===============================================================================
 
 PATH_EXPAT_H = -I/usr/include
-PATH_FREETYPE_H = -I/usr/include/freetype2
-PATH_X_H = -I/usr/include/X11
-PATH_GLIB_H = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-PATH_CAIRO_H = -I/usr/include/cairo
-PATH_PANGO_H = -I/usr/include/pango-1.0
-PATH_ATK_H = -I/usr/include/atk-1.0
-PATH_GTK_H =  -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
+PATH_FREETYPE_H = $(shell pkg-config --cflags freetype2)
+PATH_X_H = $(shell pkg-config --cflags x11)
+PATH_GLIB_H = $(shell pkg-config --cflags glib-2.0)
+PATH_GTK_H =  $(shell pkg-config --cflags gtk+-2.0)
 PATH_MESA_H = -I/usr/include
-PATH_GTKGL_H = -I/usr/include/gtkglext-1.0 -I/usr/lib/gtkglext-1.0/include
+PATH_GTKGL_H = $(shell pkg-config --cflags gtkglext-x11-1.0)
 
 PATH_EXPAT_L = -L/usr/lib
 PATH_FREETYPE_L = -L/usr/lib
 PATH_X_L = -L/usr/lib
-PATH_GLIB_L = -L/usr/lib
-PATH_CAIRO_L = -L/usr/lib
-PATH_PANGO_L = -L/usr/lib
-PATH_ATK_L = -L/usr/lib
-PATH_GTK_L =  -L/usr/lib
+PATH_GLIB_L = $(shell pkg-config --libs-only-L glib-2.0)
+PATH_GTK_L =  $(shell pkg-config --libs-only-L gtk+-2.0)
 PATH_MESA_L = -L/usr/lib
-PATH_GTKGL_L =-L/usr/lib
+PATH_GTKGL_L =$(shell pkg-config --libs-only-L gtkglext-x11-1.0)
 
 #============================== Linux amd64 ====================================
 #             Fedora 8.0, Ubuntu 7.10, Suse 10.3, Mandriva 2008
@@ -48,9 +42,6 @@
 # PATH_FREETYPE_H = -I/usr/include/freetype2
 # PATH_X_H = -I/usr/include/X11
 # PATH_GLIB_H = -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
-# PATH_CAIRO_H = -I/usr/include/cairo
-# PATH_PANGO_H = -I/usr/include/pango-1.0
-# PATH_ATK_H = -I/usr/include/atk-1.0
 # PATH_GTK_H =  -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include
 # PATH_MESA_H = -I/usr/include
 # PATH_GTKGL_H = -I/usr/include/gtkglext-1.0 -I/usr/lib64/gtkglext-1.0/include
@@ -59,9 +50,6 @@
 # PATH_FREETYPE_L = -L/usr/lib64
 # PATH_X_L = -L/usr/lib64
 # PATH_GLIB_L = -L/usr/lib64
-# PATH_CAIRO_L = -L/usr/lib64
-# PATH_PANGO_L = -L/usr/lib64
-# PATH_ATK_L = -L/usr/lib64
 # PATH_GTK_L =  -L/usr/lib64
 # PATH_MESA_L = -L/usr/lib64
 # PATH_GTKGL_L =-L/usr/lib64
@@ -72,9 +60,6 @@
 # PATH_FREETYPE_H = -I/usr/X11R6/include/freetype2
 # PATH_X_H = -I/usr/X11R6/include
 # PATH_GLIB_H = I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include
-# PATH_CAIRO_H = -I/usr/local/include/cairo
-# PATH_PANGO_H = -I/usr/local/include/pango-2.0
-# PATH_ATK_H = -I/usr/local/include/atk-2.0
 # PATH_GTK_H =  -I/usr/local/include/gtk-2.0 -I/usr/local/lib/gtk-2.0/include
 # PATH_MESA_H = -I/usr/X11R6/include/GL
 # PATH_GTKGL_H = -I/usr/local/include/gtkglext-1.0 \
@@ -84,9 +69,6 @@
 # PATH_FREETYPE_L = -L/usr/X11R6/lib
 # PATH_X_L = -L/usr/X11R6/lib
 # PATH_GLIB_L = -L/usr/local/lib
-# PATH_CAIRO_L = -L/usr/local/lib
-# PATH_PANGO_L = -L/usr/local/lib
-# PATH_ATK_L = -L/usr/local/lib
 # PATH_GTK_L = -L/usr/local/lib
 # PATH_MESA_L = -L/usr/X11R6/lib
 # PATH_GTKGL_L = -L/usr/local/lib
Index: gamgi-0.15/src/make_rules
===================================================================
--- gamgi-0.15.orig/src/make_rules
+++ gamgi-0.15/src/make_rules
@@ -34,21 +34,18 @@
 
 #================================ shared libs ==============================
 
-LIBS = -lgtkglext-x11-1.0 -lgdkglext-x11-1.0 -lGLU -lGL -lgtk-x11-2.0 \
-	-lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 \
-	-lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 \
-	-lXext -lX11 -lXi -lXmu -lfreetype -lexpat -lm -ldl
+LIBS = $(shell pkg-config --libs-only-l gtkglext-x11-1.0 gtk+-2.0 glib-2.0 \
+			freetype2) \
+	-lXext -lX11 -lXi -lXmu -lexpat -lm -ldl
 
 #================================ full paths ===============================
 
 PATH_H = $(PATH_GAMGI_H) \
-	$(PATH_GTKGL_H) $(PATH_MESA_H) $(PATH_GTK_H) $(PATH_ATK_H) \
-	$(PATH_PANGO_H) $(PATH_CAIRO_H) $(PATH_GLIB_H) $(PATH_X_H) \
-	$(PATH_FREETYPE_H) $(PATH_EXPAT_H)
-
-PATH_L = $(PATH_GTKGL_L) $(PATH_MESA_L) $(PATH_GTK_L) $(PATH_ATK_L) \
-	$(PATH_PANGO_L) $(PATH_CAIRO_L) $(PATH_GLIB_L) $(PATH_X_L) \
-	$(PATH_FREETYPE_L) $(PATH_EXPAT_L)
+	$(PATH_GTKGL_H) $(PATH_MESA_H) $(PATH_GTK_H) $(PATH_GLIB_H) \
+	$(PATH_X_H) $(PATH_FREETYPE_H) $(PATH_EXPAT_H)
+
+PATH_L = $(PATH_GTKGL_L) $(PATH_MESA_L) $(PATH_GTK_L) $(PATH_GLIB_L) \
+	$(PATH_X_L) $(PATH_FREETYPE_L) $(PATH_EXPAT_L)
 
 #============================== compile all ================================
 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 828 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/debichem-devel/attachments/20110415/2385695b/attachment.pgp>


More information about the Debichem-devel mailing list