[Bug 626455] New: libnotify misses a Requires: gtk+-2.0 in its pkg-config file
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c0 Summary: libnotify misses a Requires: gtk+-2.0 in its pkg-config file Classification: openSUSE Product: openSUSE 11.3 Version: Final Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: GNOME AssignedTo: bnc-team-gnome@forge.provo.novell.com ReportedBy: cmorve69@yahoo.es QAContact: qa@suse.de Found By: Community User Blocker: --- Ekiga fails to build with a libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../.. -I../../../../lib/engine/framework -I../../../../lib/engine/notification -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -fstack-protector -fexceptions -Wall -Wextra -Winit-self -Wswitch-default -Wswitch-enum -Wstrict-aliasing=2 -Wfloat-equal -Wshadow -MT libnotify-main.lo -MD -MP -MF .deps/libnotify-main.Tpo -c ./../../../lib/engine/components/libnotify/libnotify-main.cpp -fPIC -DPIC -o libs/libnotify-main.o In file included from /usr/include/libnotify/notify.h:28:0, from ./../../../lib/engine/components/libnotify/libnotify-main.cpp:41: /usr/include/libnotify/notification.h:28:21: fatal error: gtk/gtk.h: No such file or directory The thing is notification.h includes gtk/gtk.h because it declares functions that take as parameter pointers to GtkWidget and GtkStatusIcon. But libnotify doesn't links against libgtk-x11-2.0.so.0. Since the pkg-config doesn't specifies a gtk+-2.0 dependency the /usr/include/gtk-2.0 include path is never added to CFLAGS. So other software, as Ekiga, can fail to build. I didn't looked in detail. But since we are talking about pointers I suppose that header could be modified to remove that #include and manually declare the pointer types. Otherwise the libnotify .pc file should be modified... not sure if adding a Requires: gtk+-2.0 or if would be enough to add a "-I/usr/include/gtk-2.0" to its cflags field. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c1 Li Bin <bili@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO CC| |bili@novell.com InfoProvider| |cmorve69@yahoo.es --- Comment #1 from Li Bin <bili@novell.com> 2010-08-03 08:06:44 UTC --- Cristian, I've checked the libnotify in my laptop with 11.3. Would you mind take a look like below? $ pkg-config --cflags libnotify -pthread -I/usr/include/gtk-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14 -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c2 Cristian Morales Vega <cmorve69@yahoo.es> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW InfoProvider|cmorve69@yahoo.es | --- Comment #2 from Cristian Morales Vega <cmorve69@yahoo.es> 2010-08-03 08:31:30 UTC --- Sorry, my fault. The problem is in libnotify 0.5.1 from GNOME:Factory. The Requires: gtk+-2.0 >= 2.6, glib-2.0 >= 2.6, dbus-1 >= 0.76, dbus-glib-1 >= 0.76 from openSUSE 11.3 is changed to Requires: glib-2.0 >= 2.6, dbus-1 >= 0.76, dbus-glib-1 >= 0.76, gmodule-2.0 (gtk+-2.0 >= 2.6 substituted for gmodule-2.0). -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c3 Li Bin <bili@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED --- Comment #3 from Li Bin <bili@novell.com> 2010-08-03 11:15:47 UTC --- I've made a patch for it, wait for the upstream's response. https://bugzilla.gnome.org/show_bug.cgi?id=625926 -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c4 Vincent Untz <vuntz@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED CC| |vuntz@novell.com Component|GNOME |GNOME Version|Final |Factory Resolution| |INVALID Product|openSUSE 11.3 |openSUSE 11.4 Target Milestone|--- |Factory --- Comment #4 from Vincent Untz <vuntz@novell.com> 2010-08-06 09:08:06 UTC --- libnotify 0.5.1 can be used with GTK+ 2 and GTK+ 3, so this is done by design. It's most probably a bug in how ekiga is setup to build, since it should link to GTK+ anyway, and instead, it relies on libnotify to bring the right flags. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c5 --- Comment #5 from Li Bin <bili@novell.com> 2010-08-06 09:32:55 UTC --- Got it, thanks! Ekiga should add the gtk+2.0 depend by itself. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c6 --- Comment #6 from Cristian Morales Vega <cmorve69@yahoo.es> 2010-08-06 10:05:31 UTC --- Are you sure this is ok???? *libnotify* is adding a dependency against <includedir>/gtk/gtk.h (both GTK+2 and GTK+3 have it?) and that header must provide definitions for GtkWidget and GtkStatusIcon (both GTK+2 and GTK+3?). Even if both versions of Gtk provide the header and the correct definitions, *libnotify* is the one adding that dependency. Is libnotify supposed to be used only by software that uses Gtk? Would not be better to modify that header, removing the "#include <gtk/gtk.h>" line and adding the types declarations? -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugzilla.novell.com/show_bug.cgi?id=626455 http://bugzilla.novell.com/show_bug.cgi?id=626455#c7 --- Comment #7 from Vincent Untz <vuntz@novell.com> 2010-08-06 10:13:39 UTC --- (In reply to comment #6)
Are you sure this is ok????
It's the best solution, yes.
*libnotify* is adding a dependency against <includedir>/gtk/gtk.h (both GTK+2 and GTK+3 have it?) and that header must provide definitions for GtkWidget and GtkStatusIcon (both GTK+2 and GTK+3?).
Both GTK+ 2 and GTK+ 3 have it. It's up to the user of libnotify to decide which version of GTK+ to use.
Even if both versions of Gtk provide the header and the correct definitions, *libnotify* is the one adding that dependency. Is libnotify supposed to be used only by software that uses Gtk?
Yes.
Would not be better to modify that header, removing the "#include <gtk/gtk.h>" line and adding the types declarations?
This could be discussed upstream, but I think that'd be wrong in the end. The thing is that it's really up to the user of libnotify to decide which version of GTK+ to use when building, and libnotify doesn't want to force its users towards one specific version. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com