[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